Ich brauche nur den Standort des Benutzers. Am besten die genaue Position, aber wenn es nicht möglich ist, wäre ein ungefährer Ort in Ordnung.
Laut der Dokumentation:
LocationClient.getLastLocation ()
Returns the best most recent location currently available.
und
LocationManager.getLastKnownLocation (String)
Returns a Location indicating the data from the last known location fix obtained from the given provider.
Wenn mein Verständnis richtig ist, wird das erstere mir ein sehr gutes Ergebnis geben (oder manchmal null), während das letztere mir ein Ergebnis geben wird, das selten null wäre.
Dies ist mein Code (vereinfacht)
%Vor%Es scheint zu funktionieren, aber meine Fragen sind:
getLastLocation
und getLastKnownLocation
korrekt? Danke
LocationClient.getLastLocation()
gibt nur null
zurück, wenn eine Standortbestimmung nicht möglich ist. getLastLocation()
ist nicht schlechter als getLastKnownLocation()
und ist normalerweise viel besser. Ich denke nicht, dass es sich lohnt, auf getLastKnownLocation()
zurückzufallen.
Sie können nicht mit beiden Schwierigkeiten bekommen, aber es ist Overkill.
Natürlich müssen Sie sich daran erinnern, dass LocationClient
Teil von Google Play-Diensten ist. Daher ist es nur auf Geräten verfügbar, deren Plattform den Google Play Store enthält. Einige Geräte verwenden möglicherweise eine nicht standardmäßige Android-Version und Sie haben keinen Zugriff auf LocationClient
.
In der Dokumentation zu den Google Play-Diensten wird dies ausführlicher erläutert.