Uprawnienia Androida mają chronić prywatność użytkownika. Wyświetlają się prośby użytkowników o dostęp do typów danych poufnych, takich jak kontakty lub zdjęcia, oraz funkcji systemowych, takich jak wykrywanie lokalizacji czy kroków. Użytkownicy przyznają te uprawnienia po pierwszym pobraniu aplikacji.
Jeśli aplikacja potrzebuje dostępu do któregokolwiek z tych typów danych (podzbioru typów danych Google Fit), zanim poprosisz o uprawnienia OAuth, poproś o odpowiednie uprawnienia Androida. Patrz niżej
Typy danych, które wymagają uprawnień Androida
Aby uzyskać dostęp do tych typów danych o aktywności fizycznej, musisz poprosić o uprawnienia ACTIVITY_RECOGNITION
na Androida:
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 przeczytać 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 Androida:
- Aby odczytać te typy danych:
com.google.distance.delta
com.google.location.sample
com.google.location.bounding_box
com.google.speed
Aby zarejestrować te typy danych, musisz poprosić o przyznanie uprawnień BODY_SENSORS
na Androida:
com.google.heart_rate.bpm
Prośba o uprawnienia na Androidzie
Dowiedz się więcej o prośbach o uprawnienia na Androidzie, uprawnieniach do rozpoznawania aktywności fizycznej, dokładności lokalizacji i czujników na ciele.
Aby uzyskać dostęp do powyższych typów danych za pomocą interfejsów Google Fit API, musisz wdrożyć logikę umożliwiającą obsługę żądań uprawnień na urządzeniach z Androidem 10 i poprzednimi. W tych przykładach użyto uprawnienia ACTIVITY_RECOGNITION
.
Android 10
Aby Twoja aplikacja mogła być kierowana na interfejs API na poziomie 29 lub wyższym, poproś użytkownika o uprawnienia i zarejestruj je w pliku manifestu aplikacji.
Dodaj uprawnienia do pliku manifestu.
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
Sprawdź, czy uprawnienia zostały przyznane:
if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACTIVITY_RECOGNITION) != PackageManager.PERMISSION_GRANTED) { // Permission is not granted }
Jeśli uprawnienie nie zostało jeszcze przyznane, poproś o nie:
ActivityCompat.requestPermissions(thisActivity, arrayOf(Manifest.permission.ACTIVITY_RECOGNITION), MY_PERMISSIONS_REQUEST_ACTIVITY_RECOGNITION)
Android 9 i starsze
Twoja aplikacja może być kierowana na interfejs API na poziomie 28 lub niższym:
Poproś o uprawnienia
com.google.android.gms.permission.ACTIVITY_RECOGNITION
.Dodaj uprawnienia do pliku manifestu.
<uses-permission android:name="android.gms.permission.ACTIVITY_RECOGNITION"/>