Google empfiehlt, die Location and Context APIs in Google Play-Diensten in Apps zu verwenden, für die Standortdienste erforderlich sind. Wenn deine App die Framework Location APIs nutzt, ist es wichtig, zu den Google Play-Diensten zu migrieren, damit du die neuesten von Google bereitgestellten Funktionen nutzen kannst.
Aus den folgenden Gründen ist die Verwendung von Google Play-Diensten die bevorzugte Option für Standortdienste in Ihrer App:
- Die Google Play-Dienste bieten eine einfache Oberfläche und eine übersichtlichere API-Oberfläche.
- Sie legen eine gewünschte Dienstqualität fest und die APIs verwalten die zugrunde liegenden Technologien für Sie.
- Die APIs für Google Play-Dienste sind für Leistung und Akkunutzung optimiert.
- Die Google Play Services APIs werden aktiv gepflegt. Google arbeitet ständig daran, die Algorithmen zu verbessern und weitere Funktionen hinzuzufügen.
App aktualisieren
In den folgenden Schritten wird beschrieben, wie Sie eine Anwendung so aktualisieren, dass sie die Standort- und Kontext-APIs verwendet:
- Google Play-Dienste in Ihrem Projekt einrichten
- Verwenden Sie die Location Settings API, um die aktuellen Standorteinstellungen zu validieren.
- Google Play-Dienste für komplexe Funktionen wie Geofencing, Aktivitätserkennung und Bekanntheit verwenden
- Ersetzen Sie die Nutzung der Framework-Standort-API durch die API des Anbieters für kombinierte Standortbestimmung.
- Entfernen Sie Verweise auf die Framework Location API.
Google Play-Dienste in Ihrem Projekt einrichten
Um die Standort- und Kontext-APIs für Ihr Projekt verfügbar zu machen, müssen Sie einen Verweis auf das Maven-Repository von Google hinzufügen und eine Abhängigkeit von den erforderlichen APIs deklarieren. Weitere Informationen finden Sie unter Google Play-Dienste einrichten.
Standorteinstellungen-API verwenden
Mithilfe der Standorteinstellungen-API stellen Apps die gewünschte QoS-Ebene bereit und die API fordert den Nutzer auf, die Systemeinstellungen entsprechend zu ändern. So verwenden Sie die Location Settings API in Ihrer App:
- Fordern Sie im App-Manifest Berechtigungen zur Standortermittlung an.
- Richten Sie ein
LocationRequest
-Objekt ein, das die gewünschte QoS-Ebene angibt. - Verwenden Sie die Location Settings API, um die aktuellen Einstellungen zu prüfen.
Weitere Informationen finden Sie unter Standorteinstellungen ändern oder in den Google Play-Standortbeispielen (Beispielcode).
Google Play-Dienste für komplexe Funktionen verwenden
Bibliotheken der Google Play-Dienste unterstützen Sie dabei, neue Nutzererlebnisse in Bezug auf Kontext und Wahrnehmung der Umgebung der Nutzer zu implementieren. Die verschiedenen Standort- und Kontextbibliotheken nutzen zusätzliche Sensoren, die über die Standortbestimmung hinausgehen, und zwar auf energieeffiziente Weise, sodass Ihre App genauere Daten erhält und gleichzeitig die Lebensdauer des Akkus reduziert wird.
Binden Sie diese Bibliotheken in Ihre App ein, anstatt eigene benutzerdefinierte Lösungen zu schreiben:
Framework-Standort-API durch die Anbieter-API für kombinierte Standortbestimmung ersetzen
Mit der Anbieter-API für kombinierte Standortbestimmung können Sie Standortdaten wie Breiten- und Längengrad abrufen. Die API des Anbieters für kombinierte Standortbestimmung verwendet genau wie die Standort-Framework-API ein Location
-Objekt, um den geografischen Standort darzustellen. Die API bietet Funktionen, mit denen nach Standortaktualisierungen gesucht und der letzte bekannte Standort abgerufen werden kann. Dank all dieser Funktionen ist die Fused Location Provider API ein guter Kandidat, um Komponenten, die die Framework Location API verwenden, mit minimalen Änderungen am Rest der App zu ersetzen.
Das Abrufen des letzten bekannten Standorts ist ein guter Ausgangspunkt für viele Tests, da es sich um einen schnellen Vorgang handelt, bei dem Standortdaten verwendet werden, die von einem Client auf dem Gerät angefordert werden. Wenn du den Standort regelmäßig verfolgen möchtest, kann deine App Standortupdates erhalten. Dadurch erhältst du aktuelle Daten und kannst komplexere Funktionen nutzen.
Verweise auf die Framework Location API entfernen
Ersetzen Sie Verweise auf Klassen im Paket com.google.android.location
durch Klassen aus dem Paket com.google.android.gms.location
. Ausnahmen sind Verweise auf die Klasse Location
, die von der API des Anbieters für kombinierte Standortbestimmung verwendet wird. Normalerweise kannst du die Komponenten zur Verwaltung der verschiedenen Anbieter, wie GPS und WLAN, aus deiner App entfernen. Die Standort- und Kontext-APIs verwalten diese Anbieter automatisch.
App testen
Um eine App auszuführen, die die neueste Version der Google Play-Dienste verwendet, benötigen Sie ein Gerät, auf dem die Play Store App installiert ist. Außerdem müssen Sie in einem Google-Konto angemeldet sein. Für Entwicklungszwecke stehen Ihnen die folgenden Optionen zur Verfügung:
- Ein physisches Gerät, das über ein USB-Kabel mit Ihrer Entwicklungsumgebung verbunden ist.
- Ein Emulator mit installierter Play Store App
Weitere Informationen zum Verbinden eines physischen Geräts mit Ihrer Entwicklungsumgebung finden Sie unter Apps auf einem Hardwaregerät ausführen. Informationen zum Erstellen eines Emulators, der die Play Store App enthält, finden Sie unter Virtuelle Geräte erstellen und verwalten.