Uprawnienia Androida

Uprawnienia Androida mają na celu ochronę prywatności użytkownika Androida. Prośba użytkownika, gdy aplikacje chcą uzyskać dostęp do typów danych wrażliwych, takich jak kontakty lub zdjęcia; takich jak lokalizacja czy wykrywanie kroków. Użytkownicy przyznają te uprawnienia podczas pierwszego pobierania aplikacji.

Jeśli aplikacja wymaga dostępu do dowolnego z tych typów danych (podzbioru typów danych Google Fit), poproś o odpowiednie uprawnienia Androida, zanim poprosisz o uprawnienia OAuth. Patrz niżej.

Przykład ekranu zgody na uprawnienia Androida
Rysunek 1. Ekran zgody na uprawnienia Androida.

Typy danych, które wymagają uprawnień Androida

Aby uzyskać dostęp do tych typów danych dotyczących aktywności fizycznej, musisz poprosić o uprawnienia ACTIVITY_RECOGNITION na Androidzie:

  • Aby zarejestrować te typy danych:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.calories.expended
  • Aby odczytać te typy danych:

    • com.google.step_count.delta
    • com.google.step_count.cumulative
    • com.google.step_count.cadence
    • com.google.activity.segment
    • com.google.activity.exercise

Aby uzyskać dostęp do tych typów danych, musisz poprosić o uprawnienia ACCESS_FINE_LOCATION na Androidzie:

  • Aby odczytać te typy danych:
    • com.google.distance.delta
    • com.google.location.sample
    • com.google.location.bounding_box
    • com.google.speed

Aby rejestrować te typy danych, musisz poprosić o uprawnienia BODY_SENSORS na urządzeniach z Androidem:

  • com.google.heart_rate.bpm

Prośba o uprawnienia Androida

Więcej informacji o prośbach o przyznanie uprawnień Androida, uprawnienia do rozpoznawania aktywności, dostęp do dokładnej lokalizacji i uprawnienia do czujników na ciele.

Aby uzyskać dostęp do powyższych typów danych za pomocą interfejsów Google Fit API, musisz wykonać te czynności: zaimplementować logikę obsługi próśb o przyznanie uprawnień w ramach Androida 10 oraz starszych wersji Androida. W tych przykładach używane jest uprawnienie ACTIVITY_RECOGNITION.

Android 10

Aby aplikacja mogła być kierowana na interfejs API na poziomie 29 lub wyższym, poproś o to uprawnienie użytkownika i zarejestruj uprawnienia w pliku manifestu aplikacji.

  1. Dodaj uprawnienia do pliku manifestu.

    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
    
  2. Sprawdź, czy uprawnienie zostało przyznane:

    if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION)
              != PackageManager.PERMISSION_GRANTED) {
          // Permission is not granted
    }
    
  3. Jeśli uprawnienia nie zostały jeszcze przyznane, poproś o nie:

    ActivityCompat.requestPermissions(thisActivity,
                arrayOf(Manifest.permission.ACTIVITY_RECOGNITION),
                MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
    

Android 9 i starsze

Aby aplikacja mogła być kierowana na interfejs API na poziomie 28 lub niższym:

  1. Poproś o uprawnienia com.google.android.gms.permission.ACTIVITY_RECOGNITION.

  2. Dodaj uprawnienia do pliku manifestu.

    <uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>
    
.