W Androidzie 13 i Wear OS 4 aplikacje mają dostęp do czujników na ciele, takich jak takie jak tętno, w tle. Nowy model dostępu jest podobny do modelu który wprowadził dostęp do lokalizacji w tle w Androidzie 10 (poziom interfejsu API 29).
Gdy aplikacja musi mieć w tle dostęp do danych z czujnika na ciele, na przykład
monitorowania danych dotyczących usług zdrowotnych w tle, należy poprosić o
BODY_SENSORS_BACKGROUND
.
Zgodnie z opisem na stronie ze sprawdzonymi metodami dotyczącymi prywatności aplikacje powinny prosić tylko o pozwolenie na:
uprawnienia BODY_SENSORS_BACKGROUND
, gdy są kluczowe dla aplikacji
oraz należy poinformować o tym użytkowników.
Proces przyznawania uprawnień zależy od docelowego pakietu SDK aplikacji wersji.
Aplikacja jest kierowana na Androida 13 lub nowszego
Oprócz dotychczasowego uprawnienia BODY_SENSORS
zadeklaruj
Uprawnienia BODY_SENSORS_BACKGROUND
w pliku manifestu:
<uses-permission android:name="android.permission.BODY_SENSORS">
<uses-permission android:name="android.permission.BODY_SENSORS_BACKGROUND">
Następnie aplikacja musi poprosić o te uprawnienia w osobnych operacjach:
- Sprawdź, czy przyznano
BODY_SENSORS
. Jeśli nie, poproś o odpowiednie uprawnienia. - Sprawdź, czy przyznano
BODY_SENSORS_BACKGROUND
. Jeśli nie, poproś o uprawnienia.
Uwaga: jeśli aplikacja prosi o uprawnienia dostępu do obu czujników na ciele system zignoruje żądanie i nie przyzna żadnej aplikacji uprawnienia.
Na Androidzie 13 (poziom interfejsu API 33) i nowszych wersjach okno uprawnień czasu działania nie
Uwzględnij opcję „Zawsze zezwalaj”, . Zamiast tego użytkownicy muszą włączyć opcję Cały czas.
dostęp do czujnika w tle z poziomu ustawień systemu, jak pokazano na ilustracji 1. Gdy
poproś o uprawnienie BODY_SENSORS_BACKGROUND
po jego przyznaniu
BODY_SENSORS
, możesz pomóc użytkownikom przejść na tę stronę ustawień. Jeśli
odmówi dostępu całodobowego, powinni oni mieć możliwość dalszego korzystania
.
Aplikacja jest kierowana na wcześniejszą wersję
Jeśli Twoja aplikacja jest kierowana na wersję Androida starszą niż 13, tło
gdy poprosisz o BODY_SENSORS
, dostęp nie zostanie przyznany automatycznie
uprawnienia. Zamiast tego użytkownicy widzą okno systemowe z prośbą o przejście do
ustawienia uprawnień aplikacji do czujników, tak jak na ilustracji 2. Następnie użytkownicy muszą
włącz czujnik w tle na tej stronie ustawień.
Użytkownicy mogą odrzucić dostęp w tle. Ma taki sam skutek jak cofnięcie zgody na
BODY_SENSORS
, gdy aplikacja działa w tle. Gdy
aplikacja używa aplikacji PassiveMonitoringClient
bez uprawnień dostępu w tle
i przechodzi w tle, aplikacja utraci uprawnienie BODY_SENSORS
,
wywołanie zwrotne onPermissionLost()
. Z tych powodów
Szczególnie ważne jest, aby stosować sprawdzone metody wysyłania żądań dotyczących środowiska wykonawczego.
uprawnień.