FusedLocationApi liefert null

B

Binbose

Ambitioniertes Mitglied
0
Hallo Leute,
ich habe folgendes Problem:
Wenn ich mit
Code:
mLastLocation = LocationServices.FusedLocationApi.getLastLocation(
                mGoogleApiClient);
Die letzte Position abfrage, und bei Android Stadorte aktiviert habe, dann liefert die FusedLocationApi wie gewünscht eine Position. Wenn Standorte allerdings augeschaltet sind, bekomme ich immer null. In der Google Documantation steht, dass man nur in den seltensten Fällen null bekommt, aber wenn das immer der Fall ist, sobald der Nutzer die Standortdienste ausschaltet, dann ist das ja eher die Regel, als die Ausnahme. Ich dachte man bekommt dann zumindest eine ungenaue Location, die nur auf Grundlage von WLAN, Drahtlosnetzwerk ermittelt wurde, oder die letzte bekannte Position, die irgendwie abgespreichert wurde.
Mache ich etwas falsch, oder ist es so gewollt? Kommt man auf irgendeine Weise immer an die Location (kann auch sehr unpräzise sein) ?
(Gleiches für die GoogleMap, die nur den Standort anzeigt, wenn Standortdienste aktiviert sind)
 
Wenn man den Standort ausschaltet, warum sollte dann noch ein Standort geliefert werden? Wenn ich nicht will, dass eine App meinen Standort weiß, dann stell ich Standortdienst komplett aus.
Soll dein Handy auch dann klingeln, wenn du den Ton ausschaltest? Also so ist mein Verständnis, wie es für mich laufen sollte - kp wie Google das tatsächlich umgesetzt hat.

Ungenaue Standorte wirst du bekommen, wenn der User die Standorteinstellung auf Energiesparmodus (nur WLAN- und Mobilfunknetze) benutzt.

Find die schwammige Aussage in der Doc auch recht irreführend. Ich vermute, dass sich die getLastLocation-Funktion vielleicht genau so verhält, wie die getLastKnownLocation vom LocationManager:

https://developer.android.com/refer...r.html#getLastKnownLocation(java.lang.String)
If the provider is currently disabled, null is returned.
Was hast du denn für Rechte zum Standort in deiner AndroidManifest angefordert?
 
Naja, wenn ich mich nicht täusche (ist jetzt auch schon ein bisschen her), konnte man bei meinem Samsung S3, dass kein Lollipop drauf hatte, nur GPS an und ausschalten. Die Standortermittlung über WLAN und Drahtlosnetzwerk funktionierte meiner Meinung nach dann aber noch (wenn auch ungenau).

Das wäre ziemlich unpraktisch, dann werde ich wohl den letzten bekannten Ort in den shared Preferences oder einer Datenbank ablegen, und den Nutzer darauf hinweisen, dass die App unter Umständne den falschen Standort benutzt.

Die benutze ich, weiß aber garnicht, ob ich die alle wirklich benötige, da ich mehrmals verschiedene Methoden zur Standortermittlung ausprobiert habe, um das Problem zu lösen, und die Übersicht verloren habe.
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<permission
android:name="com.example.stoos.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.example.stoos.permission.MAPS_RECEIVE"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
 
Also beim s3 hier kann mehr als GPS an und ausschalten xd
 

Ähnliche Themen

L
  • LHomme
Antworten
1
Aufrufe
1.167
jogimuc
J
W
Antworten
11
Aufrufe
1.428
washpuda
W
R
Antworten
1
Aufrufe
993
swa00
swa00
Zurück
Oben Unten