2017-12-07 6 views
0

ich einen Ort-Service haben auf einem separaten Java ausgeführt wird:Android, wie Daten aus einem Dienst abgerufen werden unter Verwendung einer Intent

public class GPSService extends Service implements LocationListener, 
     GoogleApiClient.ConnectionCallbacks, 
     GoogleApiClient.OnConnectionFailedListener { 

    Intent intent; 
    LocationRequest mLocationRequest; 
    GoogleApiClient mGoogleApiClient; 
    Location mLastLocation; 
    String lat, lon; 
    public static String str_receiver = "servicetutorial.service.receiver"; 

ich mLastLocation von ihm mit einem Vorsatz aus einer anderen Klasse abrufen möchten, dass die Lage passieren als Eingang des func MyFunc

Wenn ich

startService(new Intent(this, GPSService.class)); 
GPSService obj = new GPSService(); 
MyFunc(obj.mLastLocation); 

Es kompiliert verwenden, aber das Objekt Ort übergeben wird, null

Muss ich Put und Get Extras verwenden? Wie benutzt man es im Falle einer Location-Variable? Ich muss Put auch verwenden?

Hinweis: Der Dienst funktioniert problemlos und wird wie geplant aktualisiert. Danke.

+0

mit getDoubleExtra abrufen Warum können Sie nicht einen Rundfunkempfänger verwenden? –

Antwort

0

Sie können als zwei verschiedene double Werte Breiten- und Längen passieren und

+0

Funktioniert nicht, es ist nicht möglich, lat und lon zu lokalisieren. Muss ich putDoubleExtra auf Variable lat und lon verwenden, bevor ich getDoubleExtra darauf verwenden kann? – czane

Verwandte Themen