Heim > Java > javaLernprogramm > Wie kann ich die Laufzeitstandortberechtigung in Android ordnungsgemäß anfordern?

Wie kann ich die Laufzeitstandortberechtigung in Android ordnungsgemäß anfordern?

Susan Sarandon
Freigeben: 2024-12-06 21:05:14
Original
254 Leute haben es durchsucht

How to Properly Request Runtime Location Permission in Android?

So fordern Sie zur Laufzeit eine Standortberechtigung an

In der Manifestdatei ist es wichtig, die erforderlichen Berechtigungen für den Standortzugriff anzugeben. Allerdings reicht das einfache Hinzufügen von Berechtigungen zum Manifest auf Geräten mit Android 6 oder höher nicht aus. Um Standortaktualisierungen erfolgreich zu erhalten, müssen Sie zur Laufzeit eine Berechtigung anfordern. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Berechtigungsstatus prüfen:

    • Verwenden Sie ContextCompat.checkSelfPermission(), um zu überprüfen, ob die Die App hat Zugriff auf die erforderlichen Berechtigungen (in Ihrem Fall Manifest.permission.ACCESS_FINE_LOCATION).
  2. Berechtigung anfordern (falls nicht erteilt):

    • Wenn Berechtigungen nicht erteilt werden , verwenden Sie ActivityCompat.requestPermissions(). Dadurch wird der Benutzer aufgefordert, die Berechtigung zu erteilen oder zu verweigern.
  3. Berechtigungsergebnis verarbeiten:

    • OnRequestPermissionsResult() überschreiben. Diese Methode empfängt das Ergebnis der Berechtigungsanfrage und aktualisiert den Standortmanager entsprechend.

    In Ihrem Code:

    • Sie fügen den Standort korrekt hinzu Berechtigungen für das Manifest.
    • Sie verwenden ContextCompat.checkSelfPermission(), um den Berechtigungsstatus zu überprüfen, fordern die Berechtigung jedoch nicht an, wenn dies nicht der Fall ist gewährt.
    • Um das Problem zu beheben, müssen Sie eine Standortberechtigung mit ActivityCompat.requestPermissions() anfordern, wie in den aktualisierten Java- und Kotlin-Codebeispielen in der Antwort gezeigt.
  4. Standortaktualisierungen starten (sofern die Erlaubnis erteilt wurde):

    • Nachdem die Erlaubnis erteilt wurde, Verwenden Sie requestLocationUpdates(), um Standortaktualisierungen zu erhalten.
  5. Standortaktualisierungen anhalten/fortsetzen:

    • Verwenden Sie onPause() und onResume() zum Anhalten und Fortsetzen von Standortaktualisierungen, wenn die Aktivität im Hintergrund oder im Vordergrund stattfindet, bzw.

Das obige ist der detaillierte Inhalt vonWie kann ich die Laufzeitstandortberechtigung in Android ordnungsgemäß anfordern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage