słowa kluczowe: odzież, uprawnienia, collections_guideslandingwear image_path: images/training/wear/multiple_permissions.png
Żądanie uprawnień na Wear OS jest podobne do żądania uprawnień w aplikacjach mobilnych, ale z kilkoma dodatkowymi przypadkami użycia. Z dokumentu wynika, że rozumiesz, jak działają uprawnienia na Androidzie. Jeśli nie, sprawdź, jak działają uprawnienia na Androidzie.
Podobnie jak w przypadku aplikacji mobilnej, użytkownik musi przyznać aplikacji Wear uprawnienia dostępu do określonych funkcji. W aplikacjach na Wear udostępniaj przydatne funkcje bez konieczności podawania żadnych uprawnień.
Scenariusze dotyczące uprawnień
Gdy żądasz niebezpiecznych uprawnień na Wear OS, może wystąpić kilka scenariuszy:
Aplikacja Wear prosi o przyznanie uprawnień aplikacji działającej na urządzeniu przenośnym.
Aplikacja Wear prosi o przyznanie uprawnień aplikacji działającej na telefonie.
Aplikacja na telefonie prosi o uprawnienia dla aplikacji działającej na urządzeniu do noszenia.
Aplikacja Telefon prosi o wiele uprawnień, których można używać tylko wtedy, gdy urządzenie do noszenia jest połączone.
Aby zobaczyć wszystkie te scenariusze w działającej aplikacji, zapoznaj się z przykładem ExcersizeSampleCompose na GitHubie.
W poniższych sekcjach znajdziesz opisy poszczególnych scenariuszy. Więcej informacji o prośbach o uprawnienia znajdziesz w sekcji Wzory próśb o uprawnienia.
Aplikacja na Wear prosi o uprawnienia do noszenia
Gdy aplikacja Wear prosi o uprawnienia dla aplikacji działającej na urządzeniu do noszenia, system wyświetla okno z prośbą o te uprawnienia. W aplikacji proś o uprawnienia tylko wtedy, gdy użytkownik będzie wiedział, dlaczego są one potrzebne do wykonania danej operacji.
Zapoznaj się z zasadami dotyczącymi uprawnień, aby zapewnić użytkownikom najlepsze wrażenia, i pamiętaj, by sprawdzić shouldShowRequestPermissionRationale()
i w razie potrzeby podać dodatkowe informacje.
Jeśli aplikacja lub tarcza zegarka wymaga więcej niż 1 uprawnienia, prośby o nie będą się pojawiać po kolei.
Aplikacja na Wear prosi o przyznanie uprawnień do korzystania z telefonu
Gdy aplikacja na Wear prosi o uprawnienia na telefonie (np. aplikacja na urządzenie noszące chce uzyskać dostęp do zdjęć lub innych danych wrażliwych w wersji mobilnej), musi przekierować użytkownika na telefon, aby ten zaakceptował uprawnienia. W takim przypadku aplikacja na telefon może przekazać użytkownikowi dodatkowe informacje za pomocą aktywności. W ramach aktywności dodaj 2 przyciski: jeden do przyznawania uprawnień i jeden do ich odmowy.
Aplikacja Telefon prosi o uprawnienia do noszenia
Jeśli użytkownik korzysta z aplikacji na telefonie, która wymaga uprawnień do urządzenia do noszenia (np. do wstępnego wczytania muzyki na wypadek utraty połączenia z telefonem), aplikacja przekierowuje użytkownika do urządzenia do noszenia, aby ten zaakceptował uprawnienia. Wersja aplikacji na urządzenia noszące korzysta z metody requestPermissions()
do wywołania okna uprawnień systemowych.
Aplikacja Telefon prosi o kilka uprawnień jednocześnie
Aplikacje partnerskie na Androidzie 12 (poziom interfejsu API 31) lub nowszym mogą korzystać z profili urządzeń towarzyszących podczas łączenia się z zegarkiem. Korzystanie z profilu upraszcza proces rejestracji, ponieważ pozwala połączyć udzielenie zestawu uprawnień do konkretnego typu urządzenia w jednym kroku.
Połączone uprawnienia są przyznawane aplikacji towarzyszącej po połączeniu urządzenia i trwają tylko przez czas jego powiązania. Usunięcie aplikacji lub usunięcie powiązania powoduje usunięcie uprawnień. Więcej informacji znajdziesz w sekcji AssociationRequest.Builder.setDeviceProfile()
.
.
Wzorce dotyczące prośby o uprawnienia
Istnieją różne wzorce prośby o uprawnienia od użytkowników. W kolejności od największej do najmniejszej:
Pytaj w kontekście, gdy uprawnienie jest oczywiście niezbędne do działania danej funkcji, ale nie jest niezbędne do działania całej aplikacji.
Edukacja w kontekście, gdy powód prośby o przyznanie uprawnień nie jest oczywisty, a uprawnienie nie jest niezbędne do działania całej aplikacji.
Te wzorce omawiamy w następnych sekcjach.
Zapytaj w kontekście
Poproś o uprawnienia, jeśli użytkownik ma jasne, dlaczego dane te są potrzebne do wykonania danej operacji. Użytkownicy chętniej udzielają uprawnień, gdy rozumieją związek z funkcją, z której chcą skorzystać.
Aplikacja może na przykład wymagać lokalizacji użytkownika do pokazywania interesujących miejsc w pobliżu. Gdy użytkownik kliknie, aby wyszukać miejsca w pobliżu, aplikacja może od razu poprosić o dostęp do lokalizacji, ponieważ istnieje wyraźny związek między wyszukiwaniem miejsc w pobliżu a potrzebą uzyskania dostępu do lokalizacji. Ze względu na oczywistość tego związku aplikacja nie musi wyświetlać dodatkowych ekranów z informacjami.
Edukacja w kontekście
Rysunek 6 przedstawia przykład edukacji w kontekście. Aplikacja nie wymaga uprawnień do uruchomienia minutnika, ale wbudowany wskaźnik edukacyjny informuje, że ta część aktywności – wykrywanie lokalizacji – jest zablokowana. Gdy użytkownik kliknie podpowiedź, pojawi się ekran z prośbą o uprawnienia, który umożliwi mu odblokowanie wykrywania lokalizacji.
Użyj metody shouldShowRequestPermissionRationale()
, aby pomóc aplikacji w podejmowaniu decyzji, czy udostępnić więcej informacji. Więcej informacji znajdziesz w artykule Poproś o przyznanie uprawnień aplikacji. Możesz też sprawdzić, jak przykładowa aplikacja do sterowania głośnością w GitHubie wyświetla informacje.
Odpowiedź na odrzucenie
Jeśli użytkownik odmówi udzielenia uprawnień, które nie są niezbędne do wykonania danej czynności, nie blokuj mu dalszego działania. Jeśli niektóre części aktywności są wyłączone z powodu odmowy uprawnień, prześlij wizualną informację zwrotną.
Rysunek 7 przedstawia ikonę kłódki, która wskazuje, że funkcja jest zablokowana, ponieważ użytkownik nie zezwolił na jej używanie.
Gdy po raz drugi pojawi się okno z uprawnieniami urządzenia, które zostały wcześniej odrzucone, będzie zawierać opcję Odrzuć, nie pokazuj ponownie. Jeśli użytkownik wybierze tę opcję, jedynym sposobem na przyznanie mu tego uprawnienia w przyszłości będzie otwarcie aplikacji Ustawienia na urządzeniu do noszenia.
Dowiedz się więcej o tym, jak postępować w przypadku odmowy udzielenia uprawnień.
Uprawnienia dotyczące usług
Tylko działanie może wywoływać metodę requestPermissions()
. Jeśli więc użytkownik wejdzie w interakcję z aplikacją za pomocą usługi – np. przez tarczę zegarka – musi ona otworzyć działanie, zanim poprosi o uprawnienie. W tym ćwiczeniu wyjaśnij, dlaczego potrzebne jest pozwolenie.
Ogólnie nie proś o uprawnienia do tarczy zegarka. Zamiast tego zastosuj komplikację i pozwól użytkownikowi wybrać, które dane mają być wyświetlane.
Ustawienia
Użytkownik może w każdej chwili zmienić uprawnienia aplikacji na Wear w Ustawieniach. Gdy użytkownik próbuje zrobić coś, co wymaga uprawnień, najpierw wywołaj metodę checkSelfPermission()
, aby sprawdzić, czy aplikacja ma uprawnienia do wykonania tej operacji.
Wykonaj tę czynność nawet wtedy, gdy użytkownik już wcześniej przyznał Ci uprawnienia, ponieważ mógł je później anulować.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy obsługa JavaScript jest wyłączona
- Żądanie uprawnień czasu działania
- Uprawnienia Bluetooth
- Komunikacja w tle