Urządzenia można udostępniać na kilka sposobów. Wymagania biznesowe Twoich klientów określają, których metod obsługi administracyjnej będziesz używać.
Podstawy obsługi administracyjnej urządzeń
Używane przez klienta tryby działania (takie jak tryb właściciela urządzenia lub tryb właściciela profilu) zależą od scenariuszy wdrażania obsługi administracyjnej urządzeń (np. PWU lub należących do firmy). I podobnie, od trybów działania i wersji Androida, które musisz obsługiwać, decydują metody udostępniania, które wdrożysz.
Scenariusze wdrażania
W scenariuszu wdrożenia należącego do firmy firma jest właścicielem urządzeń, z których korzystają jej pracownicy, i w pełni kontroluje urządzenia. Zwykle organizacje wdrażają urządzenia należące do firmy, gdy muszą ściśle monitorować całe urządzenie i nim zarządzać.
Firmy, które obsługują scenariusze wdrażania PWU, pozwalają pracownikom zabierać własne urządzenia do pracy i korzystać z nich w celu uzyskiwania dostępu do poufnych informacji i aplikacji firmowych.
Środki transportu
Wdrożenia należące do firmy są obsługiwane w trybie działania właściciela urządzenia. Na Androidzie aplikacja do zarządzania jest nazywana kontrolerem zasad dotyczących urządzeń (DPC). DPC egzekwuje zasady na urządzeniu z Androidem, a gdy jest właścicielem urządzenia, zarządza nim i całym urządzeniem. Jako właściciel urządzenia DPC może wykonywać czynności na całym urządzeniu, np. konfigurować łączność na nim, konfigurować ustawienia globalne i przywracać ustawienia fabryczne.
Wdrożenia PWU są obsługiwane w trybie działania właściciela profilu. Dzięki DPC firma umożliwia korzystanie z urządzeń osobistych w celach służbowych przez dodanie profilu służbowego do głównego konta użytkownika na urządzeniu. Profil służbowy jest powiązany z głównym użytkownikiem, ale jako osobny profil. Jako właściciel profilu DPC zarządza tylko profilem służbowym na urządzeniu i ma ograniczoną kontrolę poza tym profilem.
Metody obsługi administracyjnej właścicieli urządzeń
Tryb właściciela urządzenia musisz skonfigurować podczas początkowej konfiguracji nowego urządzenia lub po przywróceniu ustawień fabrycznych. Trybu właściciela urządzenia nie można udostępnić w innym momencie.
W zależności od przypadku użycia dostępne są 2 główne metody obsługi administracyjnej trybu właściciela urządzenia.
- W procesie zależnym od urządzenia administratorzy IT mogą używać NFC do obsługi administracyjnej dużej liczby urządzeń. Z tego procesu można korzystać w przypadku zarządzanych kont Google Play lub Google Workspace.
- W procesie obsługiwanym przez użytkowników dostępne opcje zależą od tego, czy organizacja korzysta z Google Workspace.
- W przypadku Google Workspace użytkownik dodaje swoje konto Google podczas wstępnej konfiguracji urządzenia, a DPC musi przeprowadzić użytkownika przez proces konfiguracji właściciela urządzenia. Proces ukierunkowany na użytkownika może pomóc użytkownikom w skonfigurowaniu nowych urządzeń, a także jest alternatywnym rozwiązaniem, gdy urządzenia nie obsługują komunikacji NFC.
- Jeśli organizacja nie korzysta z Google Workspace, użyj metody zarządzanych kont Google Play.
Uwaga: jeśli w Google Play ograniczysz dystrybucję aplikacji do określonych krajów, te ograniczenia będą ignorowane podczas obsługi administracyjnej przez właściciela urządzenia. Numer DPC zostanie pobrany nawet wtedy, gdy urządzenie nie znajduje się w kraju docelowym.
Metody obsługi administracyjnej właściciela profilu
Zalecana metoda udostępniania trybu działania właściciela profilu zależy od tego, czy organizacja korzysta z Google Workspace.
- W przypadku Google Workspace zalecana metoda to proces oparty na działaniach użytkowników, w którym użytkownik dodaje swoje konto Google, a DPC prowadzi go przez proces konfiguracji właściciela profilu.
- Jeśli organizacja nie korzysta z Google Workspace, zalecaną metodą jest użycie metody zarządzanych kont Google Play.
Obsługiwana jest również tradycyjna metoda, w ramach której użytkownik jest proszony o ręczne zainstalowanie DPC. Polega na tym, że to użytkownik pobierze Twoją postać DPC z Google Play i zainstaluje ją. Następnie ten kontroler przeprowadzi użytkownika przez resztę procesu konfigurowania właściciela profilu.
Różnice w zarządzaniu udostępnianiem kluczy w poszczególnych wersjach Androida
Scenariusz wdrażania | Tryb działania | Metoda udostępniania | 5,0 i 5,1 | 6.0, nowsze | 7.0, nowsze |
---|---|---|---|---|---|
Należy do firmy | Właściciel urządzenia | Kod QR | ✓ | ||
Konta w zarządzanym Sklepie Google Play | ✓ | ✓ | |||
Konto Google | ✓ | ✓ | |||
NFC | ✓ | ✓ | ✓ | ||
Używaj własnego urządzenia | Właściciel profilu | Konta w zarządzanym Sklepie Google Play | ✓ | ✓ | ✓ |
Konto Google | 5.11 | ✓ | ✓ | ||
Ręczna instalacja DPC | ✓ | ✓ | ✓ |
Ogólne kwestie związane z wdrażaniem
Oto kilka kwestii, które warto wziąć pod uwagę podczas tworzenia kontrolera DPC niezależnie od zastosowanego trybu działania.
Zgodność z Usługami Google Play
Przewodnik po plikach APK w Usługach Google Play zawiera instrukcje dla deweloperów, aby sprawdzili wersję Usług Google Play przed wykonaniem transakcji przez interfejs API. Próba aktualizacji Usług Google Play może spowodować poważne zakłócenia w procesie konfiguracji urządzenia, dlatego DPC nie może próbować zaktualizować Usług Google Play przed zakończeniem obsługi administracyjnej urządzenia.
Najważniejsze kwestie dotyczące zgodności gry DPC z Usługami Google Play:
- DPC powinno działać z użyciem Usług Google Play dostarczanych z konkretnym urządzeniem.
- DPC nie powinno polegać na nowych funkcjach w przyszłych wersjach Usług Google Play, które będą dostępne w momencie obsługi administracyjnej urządzeń.
Po zakończeniu obsługi administracyjnej urządzenia DPC może poprosić użytkownika o zaktualizowanie Usług Google Play, aby mógł korzystać z najnowszych funkcji. Jeśli jednak funkcja z jakiegoś powodu jest niedostępna, DPC musi wrócić do wersji, która została dostarczona z urządzeniem.
Pobieranie szczegółów urządzenia
Z powodu opóźnień na propagacji może minąć do 2 minut, zanim wywołanie numeru devices.get w przypadku nowo zarejestrowanego urządzenia zwróci szczegóły.
Jeśli Twój przepływ pracy wymaga podania szczegółów, zanim użytkownik będzie mógł skorzystać z urządzenia lub profilu służbowego, użyj ekranu postępu w DPC i zaczekaj, aż połączenie się powiedzie.
Uwagi o wdrażaniu trybu właściciela profilu
Oto kilka kwestii, które należy wziąć pod uwagę podczas pisania DPC w celu zaimplementowania trybu działania właściciela profilu.
Usuwanie i wyłączanie osobistego kontrolera DPC
Gdy udostępniam tryb działania właściciela profilu, DPC zaczyna działać w profilu osobistym i inicjuje proces tworzenia profilu służbowego. Po utworzeniu profilu służbowego DPC będzie też działać w jego profilu. DPC w profilu służbowym kończy proces obsługi administracyjnej. W takim przypadku kontroler DPC w profilu osobistym powinien się wyłączyć albo użytkownik urządzenia powinien go usunąć.
Użytkownik usuwa osobistą wersję DPC
- Osobisty DPC nasłuchuje
ACTION_MANAGED_PROFILE_PROVISIONED
. (W przypadku urządzeń z Androidem 5.1 osobisty DPC powinien nasłuchiwaćACTION_MANAGED_PROFILE_ADDED
). - Osobisty kontroler DPC wysyła prośbę o odinstalowanie
ACTION_UNINSTALL_PACKAGE
. Spowoduje to odinstalowanie osobistej gry DPC. Ze względu na wygodę użytkowników proces odinstalowywania powinien nastąpić podczas procesu obsługi administracyjnej.
Osobisty tryb DPC sam się wyłącza
- Osobisty DPC nasłuchuje
ACTION_MANAGED_PROFILE_PROVISIONED
. (W przypadku urządzeń z Androidem 5.1 osobisty DPC powinien nasłuchiwaćACTION_MANAGED_PROFILE_ADDED
). - W stosownych przypadkach przed wyłączeniem urządzenia osobisty DPC powinien zwolnić uprawnienia administratora urządzenia.
- Osobisty DPC inicjuje żądanie wyłączenia
setApplicationEnabledSetting
za pomocą parametruCOMPONENT_ENABLED_STATE_DISABLED
. - Użytkownik może ponownie włączyć osobistą grę DPC w Google Play.
Uwagi o wdrażaniu trybu właściciela urządzenia
Oto kilka kwestii, które warto wziąć pod uwagę podczas pisania kontrolera DPC, aby wdrożyć tryb działania właściciela urządzenia.
Urządzenie musi być nowe lub przywrócone do ustawień fabrycznych
Tryb właściciela urządzenia musisz skonfigurować podczas początkowej konfiguracji nowego urządzenia lub po przywróceniu ustawień fabrycznych. Trybu właściciela urządzenia nie można udostępnić na urządzeniu w innym momencie.
Tryb właściciela urządzenia daje DPC pełną kontrolę nad urządzeniem. Jeśli obsługa administracyjna trybu właściciela urządzenia po zezwoleniem na wstępnej konfiguracji:
- Złośliwe oprogramowanie może potencjalnie utworzyć właściciela urządzenia i przejąć jego kontrolę.
- Problemy z prywatnością mogą się pojawić, jeśli na urządzeniu znajdują się już jakieś dane użytkownika lub aplikacje.
Konfigurowanie trybu właściciela urządzenia tylko na urządzeniach należących do firmy
Włącz tryb właściciela urządzenia tylko na urządzeniach, które wskażesz jako należące do firmy klienta. Możesz to sprawdzić, wykrywając unikalny identyfikator urządzenia (np. numer seryjny) lub używając dedykowanego zestawu kont autoryzowanych do rejestracji urządzeń w ramach zasad EMM.
Jeśli nie jesteś w stanie potwierdzić, że urządzenie należy do firmy, musisz utworzyć odporny na awarię mechanizm, aby tryb właściciela urządzenia nie został przez pomyłkę włączony. Możesz na przykład poprosić użytkownika o potwierdzenie lub wykonanie działania przed udostępnieniem trybu właściciela urządzenia.
Włącz aplikacje systemowe
Gdy DPC udostępnia profil służbowy, wszelkie aplikacje systemowe bez ikon programu uruchamiającego są uznawane za kluczowe dla urządzenia i są automatycznie uruchamiane w profilu służbowym. Aplikacje systemowe z ikonami programu uruchamiającego są uważane za opcjonalne. Możesz zdecydować, czy chcesz je włączyć.
Włączanie aplikacji systemowych przez Google Play
Włączanie aplikacji systemowych przez Google Play jest łatwe, a użytkownicy otrzymują aktualizacje aplikacji w miarę ich dostępności.
Włączanie aplikacji systemowych przy użyciu interfejsów API platformy Android
Jeśli chcesz, aby aplikacje systemowe były widoczne dla użytkowników natychmiast po rozpoczęciu korzystania z urządzenia, włącz je w ramach procesu obsługi administracyjnej urządzeń. DPC włącza aplikacje systemowe według nazwy pakietu lub intencji za pomocą DevicePolicyManager.enableSystemApp()
.
Aplikacje systemowe, które chcesz włączyć i przedstawić w konsoli EMM administratorom IT, możesz na kilka sposobów zidentyfikować.
Tworzenie katalogów aplikacji systemowych
W tej metodzie każde urządzenie określa, które aplikacje się na nim znajdują, i wysyła dane z powrotem do konsoli EMM. Konsola EMM dynamicznie wyświetla te dane podczas tworzenia zasad dotyczących urządzeń, co umożliwia administratorowi IT zarządzanie poszczególnymi aplikacjami.
Jeśli profil służbowy nie został jeszcze udostępniony na urządzeniu, pobierz za pomocą
queryIntentActivities()
listę wszystkich aplikacji z ikonami programu uruchamiającego na urządzeniu:private List<ResolveInfo> getAppsWithLauncher() { Intent i = new Intent(Intent.ACTION_MAIN); i.addCategory(Intent.CATEGORY_LAUNCHER); return getPackageManager().queryIntentActivities(i, 0); }
Jeśli profil służbowy jest już udostępniony na urządzeniu, pobierz listę wszystkich znajdujących się w nim aplikacji, korzystając z
PackageManager.GET_DISABLED_COMPONENTS
iPackageManager.GET_UNINSTALLED_PACKAGES
.Aplikacje systemowe możesz znaleźć na liście aplikacji, zaznaczając ikonę
FLAG_SYSTEM
, która wskazuje, czy aplikacja jest zainstalowana w obrazie systemowym urządzenia.
Zalety:
- Zapewnia administratorom IT pełny obraz aplikacji na wszystkich urządzeniach.
- Zapewnia szczegółową kontrolę nad tym, które aplikacje są włączone.
Wady:
- Każde urządzenie ma inny katalog aplikacji, więc trudno jest zastosować model jednej konfiguracji zasad do wielu typów urządzeń.
- Prezentowanie liczby aplikacji OEM w zrozumiały sposób może być trudne.
Kategoryzowanie aplikacji systemowych według funkcji
Gdy administrator chce włączyć aplikację systemową na grupie urządzeń, wybiera ogólną aplikację zależną od jej funkcji, na przykład „Przeglądarka systemowa”. Następnie DPC zezwala na wszystkie aplikacje systemowe przeznaczone do tego celu.
Zalety:
- Proste włączanie funkcji dla administratorów IT.
- Zapewnia spójne funkcje na różnych urządzeniach (przynajmniej w typowych przypadkach użycia).
Wady:
- Ogranicza aplikacje systemowe do tych, które są obsługiwane na wszystkich typach urządzeń.
- Administratorzy IT mogą chcieć przekazać jedną wersję aplikacji OEM (np. przeglądarkę Samsung®), a inną (np. przeglądarkę LG®).
- Administratorzy IT mogą nie chcieć publikować wielu aplikacji, ale nie mogą tego zrobić, gdy istnieje wiele modułów obsługi intencji.
Obsługuj tylko zatwierdzone aplikacje systemowe
Współpracujesz z producentem OEM, aby zidentyfikować określone pakiety OEM i obsługiwać tylko te pakiety w konsoli EMM. Dzięki temu możesz też skatalogować zarządzane konfiguracje aplikacji OEM, o których nie dowiesz się inaczej, bo taka aplikacja nie jest hostowana w Google Play.
Zalety:
- Znacznie upraszcza proces integracji i eliminuje skrajne przypadki, które stanowią problem w pierwszych 2 opcjach.
- Możesz skatalogować zarządzane konfiguracje aplikacji OEM i zaprezentować je w konsoli EMM dla administratorów IT.
- Umożliwia nawiązanie bliskich relacji z producentami OEM w zakresie obsługi flagowych urządzeń.
Wady:
- W efekcie jest mniej skalowalny i ogranicza wybór konsumentów.
Scenariusze testowe dla DPC
Test DPC to aplikacja typu open source od Google, która służy do testowania funkcji biznesowych dostępnych w aplikacji DPC. Testowa wersja DPC jest dostępna na github i w Google Play. Za pomocą Test DPC możesz:
- Symulowanie funkcji na Androidzie
- Ustawianie i egzekwowanie zasad
- Ustawianie ograniczeń dotyczących aplikacji i zamiarów
- Skonfiguruj profile służbowe
- Konfigurowanie w pełni zarządzanych urządzeń z Androidem
Test DPC służy przede wszystkim do testowania rozwiązania dla firm na Androida, ale może też służyć jako źródło przykładowego kodu funkcji Androida.
Dostosowywanie obsługi administracyjnej
Podczas obsługi administracyjnej urządzenia interfejs systemu wyświetla domyślny kolor na pasku stanu i domyślne logo u góry ekranu. Ustaw niestandardowe kolory i logo, aby umożliwić spójne przejście między kontrolerem DPC a interfejsem systemu. Możesz też zezwolić administratorom na korzystanie z konsoli EMM. Administrator może na przykład przesłać logo firmy lub dostosować wygląd ekranów, na których wyświetlają się powiadomienia.
Wybór kolorów i logo DPC wymusza za pomocą elementów DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR
i DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI
.
Aby ustawić kolor niestandardowy, użyj EXTRA_PROVISIONING_MAIN_COLOR
i ustaw liczbę całkowitą, która wskazuje dominujący kolor wyświetlany podczas obsługi administracyjnej urządzenia. Umieść dodatkową (stałą) w intencji za pomocą metody ACTION_PROVISION_MANAGED_PROFILE
lub ACTION_PROVISION_MANAGED_DEVICE
.
Aby dowiedzieć się, jak są przedstawiane liczby całkowite, patrz Kolor.
Na przykład w polu MAIN_COLOR
w aplikacji TestDPC.
Aby ustawić niestandardowe logo, użyj EXTRA_PROVISIONING_LOGO_URI
i ustaw obraz, który będzie wyświetlany u góry ekranu podczas obsługi administracyjnej urządzenia. Umieść dodatkową (stałą) w intencji za pomocą metody ACTION_PROVISION_MANAGED_PROFILE
lub ACTION_PROVISION_MANAGED_DEVICE
.
Upewnij się, że gęstość pikseli jest odpowiednia dla urządzenia.
Na przykład w polu LOGO_URI
w aplikacji TestDPC.
Metoda z użyciem kodu QR
Metoda udostępniania kodu QR pozwala skonfigurować tryb właściciela urządzenia przez zeskanowanie kodu QR za pomocą kreatora konfiguracji. Kod QR zawiera ładunek par klucz-wartość ze wszystkimi informacjami potrzebnymi DPC do udostępnienia urządzenia.
Konsola EMM powinna umożliwiać administratorom IT tworzenie kodów QR dla urządzeń, które chcą udostępnić. Administrator IT wysyła kody QR użytkownikom, a użytkownicy mogą udostępniać urządzenia, skanując kody QR.
Przypadki użycia obsługi administracyjnej kodu QR
Niektóre urządzenia, np. tablety, nie obsługują komunikacji NFC. Obsługa administracyjna kodów QR to wygodny sposób na udostępnienie rozproszonej floty urządzeń, które nie obsługują komunikacji NFC. Administrator IT może wysyłać użytkownikom kody QR, aby umożliwić obsługę administracyjną opartą na użytkownikach.
Obsługa administracyjna kodów QR nie wymaga tożsamości Google (np. domeny Google czy konta Google). Organizacje, które używają Androida, ale nie używają Google Workspace, nie mają tożsamości Google.
Podobnie jak w przypadku NFC, obsługa kodów QR umożliwia wdrożenia kiosku i konta jednorazowe, w których tożsamość Google (ani żadna tożsamość) nie jest potrzebna ani pożądana. Na przykład kiosk kiosku w sklepie nie należy do nikogo i nie powinien mieć tożsamości użytkownika.
Utwórz kod QR
Prawidłowy kod QR do obsługi administracyjnej za pomocą kodu QR to ciąg znaków JSON (JavaScript® Object Notation) zakodowany w UTF-8. W prawidłowym kodzie QR możesz uwzględnić te właściwości:
Zawsze wymagane
Wymagane, jeśli kontroler DPC nie jest jeszcze zainstalowany na urządzeniu
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_CHECKSUM
Zalecane, jeśli urządzenie nie jest jeszcze połączone z Wi-Fi
Opcjonalny
EXTRA_PROVISIONING_LOCALE
EXTRA_PROVISIONING_TIME_ZONE
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_COOKIE_HEADER
EXTRA_PROVISIONING_LOCAL_TIME
EXTRA_PROVISIONING_WIFI_HIDDEN
EXTRA_PROVISIONING_WIFI_SECURITY_TYPE
EXTRA_PROVISIONING_WIFI_PROXY_HOST
EXTRA_PROVISIONING_WIFI_PROXY_PORT
EXTRA_PROVISIONING_WIFI_PROXY_BYPASS
EXTRA_PROVISIONING_WIFI_PAC_URL
EXTRA_PROVISIONING_SKIP_ENCRYPTION
Ten przykład tworzy prawidłowy kod QR:
{
"android.app.extra.PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME":
"com.emm.android/com.emm.android.DeviceAdminReceiver",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_SIGNATURE_CHECKSUM":
"gJD2YwtOiWJHkSMkkIfLRlj-quNqG1fb6v100QmzM9w=",
"android.app.extra.PROVISIONING_DEVICE_ADMIN_PACKAGE_DOWNLOAD_LOCATION":
"https://path.to/dpc.apk",
"android.app.extra.PROVISIONING_SKIP_ENCRYPTION": false,
"android.app.extra.PROVISIONING_WIFI_SSID": "GuestNetwork",
"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE": {
"dpc_company_name": "Acme Inc.",
"emm_server_url": "https://server.emm.biz:8787",
"another_custom_dpc_key": "dpc_custom_value"
}
}
Proces udostępniania kodu QR
- Kreator konfiguracji poprosi użytkownika, aby 6 razy kliknął ekran powitalny. kliknięcia muszą być w tym samym miejscu na ekranie.
- Kreator konfiguracji prosi użytkownika o połączenie z internetem, aby kreator konfiguracji mógł pobrać czytnik kodów QR.
- Usługi Google Play pobierają moduł zawierający mechanizm rozpoznawania kodów QR.
- Użytkownik zeskanuje kod QR otrzymany od administratora IT.
- Kreator konfiguracji pobierze Twoją aplikację DPC i rozpocznie proces obsługi administracyjnej właściciela urządzenia za pomocą
ACTION_PROVISION_MANAGED_DEVICE
.
Metoda zarządzanych kont Google Play
DPC może skonfigurować tryb właściciela urządzenia lub tryb właściciela profilu za pomocą metody obsługi administracyjnej kont Google Play. Ta metoda obsługi administracyjnej jest przeznaczona dla organizacji, które nie korzystają z Google Workspace.
Metoda obsługi administracyjnej zarządzanych kont Google Play korzysta z Biblioteki pomocy DPC. Ta biblioteka klienta zapewnia płynne działanie zarządzanych kont Google Play. Zapewnia też zgodność z przyszłymi aktualizacjami procesu obsługi administracyjnej zarządzanych kont Google Play.
Wymagania wstępne obsługi administracyjnej urządzeń
- Identyfikator firmy jest tworzony i rejestrowany wraz z tożsamością EMM, a następnie jest ustawiany ESA zgodnie z opisem w artykule Tworzenie i rejestrowanie firmy.
- Firmowa tożsamość użytkownika jest znana w konsoli EMM.
- Użytkownik może zalogować się w aplikacji DPC za pomocą danych logowania akceptowanych w konsoli EMM. Zazwyczaj jest to firmowy adres e-mail.
Konfigurowanie trybu właściciela profilu
Możesz udostępnić tryb właściciela profilu na urządzeniu osobistym (używanym w trybie PWU).
- Użytkownik ręcznie pobiera Twoją DPC z Google Play i uruchamia ją.
- DPC udostępnia profil służbowy za pomocą
ACTION_PROVISION_MANAGED_PROFILE
. - Wykonaj ostatnie kroki konfiguracji.
Konfigurowanie trybu właściciela urządzenia
Tryb właściciela urządzenia musisz udostępnić podczas początkowej konfiguracji nowego urządzenia lub po przywróceniu ustawień fabrycznych. Trybu właściciela urządzenia nie można udostępnić w innym momencie.
Podczas konfigurowania urządzenia użytkownik wpisuje specjalny token DPC, gdy pojawia się prośba o dodanie konta. Token ma format afw#DPC_IDENTIFIER
. W przypadku dostawcy usług EMM o nazwie ACME afw#acme
zainstaluje domyślny kontroler DPC dostawcy usług EMM ACME.
Każdy dostawca usług EMM musi zażądać od Google określonego identyfikatora DPC, zanim będzie mógł go użyć w procesie udostępniania.
- Użytkownik włączy nowe urządzenie lub urządzenie z przywróconymi ustawieniami fabrycznymi i uruchomi się kreator konfiguracji.
- Gdy pojawi się prośba o dodanie konta, użytkownik wpisuje specjalny token w formacie
afw#DPC_IDENTIFIER
, który identyfikuje DPC dostawcy usług EMM. - Kreator konfiguracji używa identyfikatora DPC w tokenie, aby dodać na urządzeniu tymczasowe konto Google. To konto tymczasowe jest używane tylko do pobierania z Google Play kontrolera DPC dla dostawcy usług EMM i zostało usunięte na etapie ostatniej konfiguracji.
- DPC udostępnia urządzenie za pomocą
ACTION_PROVISION_MANAGED_DEVICE
. - Wykonaj ostatnie kroki konfiguracji.
Końcowe kroki konfiguracji dla wszystkich trybów pracy
Wykonaj te czynności dopiero po zakończeniu wstępnych czynności związanych z konfiguracją trybu właściciela profilu lub trybu właściciela urządzenia.
DPC sprawdza, czy urządzenie obsługuje zarządzane konta Google Play, inicjując bibliotekę pomocy DPC:
AndroidForWorkAccountSupport androidForWorkAccountSupport = new AndroidForWorkAccountSupport(context, admin); androidForWorkAccountSupport.ensureWorkingEnvironment(callback);
Jeśli konfigurujesz tryb właściciela urządzenia, ten krok spowoduje usunięcie tymczasowego konta Google dodanego do pobrania DPC.
Użytkownik loguje się w DPC za pomocą swoich danych logowania do EMM. Są to zwykle firmowe dane logowania.
DPC wysyła do konsoli EMM żądanie danych logowania do zarządzanego konta Google Play w przypadku uwierzytelnionego użytkownika firmowego.
Jeśli konsola EMM nie ma przypisanego użytkownika
userId
z Google Play, zostanie utworzone nowe konto użytkownika, wywołującUsers.insert()
. Jeśli udostępniasz tryb właściciela urządzenia, określ konto urządzenia (w przypadku wdrożeń specjalnych) lub konto użytkownika (w przypadku wdrożeń należących do firmy).Ustaw zasady dotyczące urządzeń, wywołując metodę
Devices.update
. Skonfiguruj zasadę przed dodaniem zarządzanego konta Google Play na urządzeniu. W przeciwnym razie zasady nie zostaną zastosowane przez krótki czas po dodaniu konta na urządzeniu.Konsola EMM wysyła żądanie danych logowania do konta dla usługi
userId
, wywołując metodęUsers.generateAuthenticationToken()
. Token uwierzytelniania jest ważny przez krótki czas i nie można go użyć ponownie. DPC powinien użyć tokena, aby automatycznie dodać konto (nie ma on zastosowania dla użytkowników).Interfejs Google Play EMM API zwraca token uwierzytelniania do konsoli EMM.
Konsola EMM przekazuje token uwierzytelniania do kontrolera DPC.
DPC doda do urządzenia konto zarządzanego Sklepu Google Play za pomocą:
androidForWorkAccountSupport.addAndroidForWorkAccount(token, accountAddedCallback);
Metoda korzystania z konta Google
DPC może użyć metody obsługi administracyjnej konta Google, aby skonfigurować tryb właściciela urządzenia lub trybu właściciela profilu. W przypadku metody obsługi administracyjnej konta Google DPC prowadzi użytkownika przez proces obsługi administracyjnej, gdy doda on swoje konto Google podczas wstępnej konfiguracji urządzenia.
Gdy użytkownik wpisze swoje dane logowania na konto Google:
- Konto użytkownika jest uwierzytelniane przez serwer uwierzytelniania Google.
- Serwer uwierzytelniania komunikuje się z serwerem przedsiębiorstwa, aby sprawdzić, czy domena konta jest zarejestrowana jako domena Google Workspace lub domena zarządzana przez EMM.
- Jeśli tak się stanie, system automatycznie pobierze z Google Play i zainstaluje DPC powiązaną z domeną.
Konfigurowanie trybu właściciela profilu
Tryb działania właściciela profilu możesz udostępnić podczas początkowej konfiguracji urządzenia lub podczas dodawania konta przez użytkownika. Aby to zrobić, kliknij Ustawienia > Dodaj konto.
- Uwierzytelnianie konta rozpoczyna użytkownik w kreatorze konfiguracji lub w sekcji Ustawienia > Dodaj konto.
- GMSCore inicjuje obsługę administracyjną profilu służbowego przy użyciu
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. - Narzędzie DPC jest automatycznie pobierane na urządzenie i uruchamiane za pomocą modułu obsługi
ACTION_GET_PROVISIONING_MODE
w celu sprawdzenia, czy DPC obsługuje obsługę administracyjną profilu służbowego.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— dodatkowe informacje z profilu służbowego, takie jak adres e-mail; W ramach tego pakietu DPC otrzyma także is_setup_wizard. Ten pakiet zostanie uwzględniony w modułach obsługiACTION_GET_PROVISIONING_MODE
iACTION_ADMIN_POLICY_COMPLIANCE
.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
— nazwa uwierzytelnionego konta do przeniesienia do nowego profilu służbowego;
- Platforma przeprowadza obsługę administracyjną profili służbowych.
- Po udostępnieniu profilu służbowego DPC otrzymuje transmisję
ACTION_PROFILE_PROVISIONING_COMPLETE
. Moduł obsługi DPCACTION_ADMIN_POLICY_COMPLIANCE
został uruchomiony w profilu służbowym. Po utworzeniu profilu służbowego DPC będzie też działać w tym profilu. DPC przekazuje zasady dotyczące tego zarządzanego konta Google, dba o to, aby urządzenie nie było w stanie przejętego urządzenia, i weryfikuje ich egzekwowanie (np. wymaganie hasła). - DPC w profilu osobistym wyłączy się samodzielnie lub użytkownik usunie.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/images/post-suw.png?authuser=7&hl=pl)
Konfigurowanie trybu właściciela urządzenia
Tryb właściciela urządzenia musisz udostępnić podczas początkowej konfiguracji nowego urządzenia lub po przywróceniu ustawień fabrycznych. Trybu właściciela urządzenia nie można w innym momencie dodać na urządzeniu.
- Uwierzytelnianie konta rozpoczyna użytkownik w kreatorze konfiguracji.
- GMSCore inicjuje obsługę administracyjną właściciela urządzenia przy użyciu
ACTION_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE
. 3.Aplikacja DPC jest automatycznie pobierana na urządzenie i uruchamiana za pomocą modułu obsługiGET_PROVISIONING_MODE
, aby wybrać odpowiedni tryb obsługi administracyjnej.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— dodatkowe informacje z profilu służbowego, takie jak język, sieć Wi-Fi czy adres e-mail. W ramach tego pakietu DPC otrzyma także is_setup_wizard. Ten pakiet zostanie uwzględniony w modułach obsługiACTION_GET_PROVISIONING_MODE
iACTION_ADMIN_POLICY_COMPLIANCE
.
- Platforma udostępnia urządzenie w wymaganym trybie obsługi administracyjnej.
- Po uruchomieniu urządzenia DPC odbiera te transmisje i uruchamia moduł
ACTION_ADMIN_POLICY_COMPLIANCE
kontrolera: - DPC używa wartości
Global.DEVICE_PROVISIONED
do potwierdzenia, że urządzenie jest nowe lub zostało przywrócone do ustawień fabrycznych (nieobsługiwane):- 0 — nieudostępniony.
- 1 — Obsługiwane.
- DPC kończy proces udostępniania, przekazując zasady dotyczące zarządzanego urządzenia, upewniając się, że urządzenie nie jest zaatakowane, i sprawdzając, czy zasady są egzekwowane (na przykład wymagają podania hasła).
![](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/images/in-suw.png?authuser=7&hl=pl)
Uwagi o wdrażaniu metody z użyciem konta Google
DPC powinien wykryć proces uwierzytelniania na koncie Google, wyszukując określone dodatki w użytej intencji uruchomienia (patrz
LaunchIntentUtil
):- Konto typu
android.accounts.Account
— wskazuje, że konto zostało dodane za pomocą kreatora konfiguracji lub za pomocą opcji —, co wymaga uruchomienia DPC do zarządzania urządzeniem lub profilem. is_setup_wizard
typu wartość logiczna — jeśli ma wartość prawda, DPC uruchomiono w kreatorze konfiguracji przed ukończeniem kreatora konfiguracji. W przeciwnym razie kliknij — lub inny proces.
Aby sprawdzić, czy DPC zostało uruchomione w ramach metody na koncie Google, należy:
boolean isSynchronousAuthLaunch(Intent launchIntent) { return launchIntent.hasExtra("is_setup_wizard"); }
- Konto typu
DPC nie może wywoływać metody
finish()
przed zakończeniem konfiguracji. Powinien też zwracać kod wyniku dodatniego (np.RESULT_OK
), ponieważ DPC jest uruchamiany za pomocąstartActivityForResult()
i czeka na wynik.Jeśli proces konfiguracji DPC dotrze do punktu wysłania intencji
ACTION_PROVISION_*
, DPC powinien poczekać na kod wyniku z procesu udostępniania, zanim wywoła metodęfinish()
. Używaj wywołań zwrotnychstartActivityForResult()
ionActivityResult()
podczas uruchamiania intencjiACTION_PROVISION_*
. (Przykłady znajdziesz wLaunchActivity
iSetupSyncAuthManagement
).Ze względu na potencjalnie asynchroniczny charakter procesu konfiguracji DPC nie może korzystać z kodu wyniku
RESULT_OK
do sygnalizowania, że obsługa administracyjna się powiodła. Jedynym gwarantowanym sposobem jest poleganie na wywołaniach zwrotnychDeviceAdminReceiver
w przypadku udanej obsługi administracyjnej.RESULT_CANCELED
oznacza, że użytkownik wycofał się w synchronicznej części procesu konfiguracji, a DPC powinien na to zareagować.W tym przykładzie DPC uruchamia obsługę administracyjną i oczekuje na kod wyniku aktywności:
Intent intent = new Intent(ACTION_PROVISION_MANAGED_PROFILE); startActivityForResult(intent, REQUEST_MANAGED_PROFILE); ... @Override public void onActivityResult(int req, int res, Intent i) { if (req == REQUEST_MANAGED_PROFILE) { if (res == Activity.RESULT_OK) { setResult(Activity.RESULT_OK); finish(); } else { Toast.makeText(this, “Provisioning failed”, Toast.LENGTH_SHORT).show(); } } }
DPC nie powinna podejmować prób skonfigurowania trybu właściciela urządzenia, jeśli urządzenie jest już obsługiwane (patrz
ProvisioningStateUtil.isDeviceProvisioned()
). W tym przykładzie DPC sprawdza, czy urządzenie jest obsługiwane:public static boolean isDeviceProvisioned(Context context) { ContentResolver cr = context.getContentResolver(); return Settings.Global.getInt(cr, DEVICE_PROVISIONED, 0) != 0; }
Opcjonalnie. Podczas uruchamiania obsługi administracyjnej DPC może użyć dodatkowego parametru
EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
, aby przekazać informacje o stanie z powrotem doDeviceAdminReceiver
(którego przypadku właściciela profilu działa w profilu służbowym). TestDPC wykorzystuje ten dodatkowy zestaw do wprowadzania innego zestawu działań w procesie obsługi konta Google po zakończeniu obsługi administracyjnej. Więcej informacji:DeviceAdminReceiver
.public class DeviceAdminReceiver extends android.app.admin.DeviceAdminReceiver { @Override public void onProfileProvisioningComplete(Context context, Intent intent) { // Retrieve the admin extras bundle, which we can use to determine the original context for // Test DPC's launch. PersistableBundle extras = intent.getParcelableExtra( EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE); ...
Aby można było skonfigurować profil służbowy, DPC musi przenieść dodane konto do nowego profilu służbowego. Aby to zrobić, DPC powinien przekazać konto podane w intencji uruchomienia
ACTION_PROVISION_MANAGED_PROFILE
.Na koniec konfiguracji DPC musi wyświetlić użytkownikowi wyraźne wezwanie do działania (np. przycisk Zakończ), abym nie myślał, że znalazł się w ślepym punkcie procesu.
DPC powinien używać motywu lub biblioteki układu kreatora konfiguracji, aby interfejs użytkownika był płynny i dobrze zintegrowany.
Metoda NFC
DPC może użyć metody obsługi NFC do skonfigurowania trybu właściciela urządzenia. W metodzie obsługi administracyjnej komunikacji (tagu NFC) tworzysz aplikację programisty komunikacji NFC, która zawiera wstępne zasady oraz konfigurację Wi-Fi, ustawienia i szczegóły obsługi administracyjnej wymagane przez klienta do skonfigurowania trybu właściciela urządzenia. Gdy użytkownik lub klient zainstaluje aplikację programisty NFC na urządzeniu z Androidem, urządzenie to staje się programistą.
Aby udostępnić urządzenie, administrator wyjmuje nowe urządzenie z pudełka i przybija je do urządzenia programistycznego lub tagu NFC. Ruch ten przesyła konfiguracje na urządzenie, aby połączyć się z internetem i pobierać odpowiednie zasady i ustawienia. Urządzeniem będzie wtedy zarządzać Twój kontroler DPC.
Po włączeniu obsługi administracyjnej urządzenia Google Play przez krótki czas będzie wyświetlać niezarządzane treści dla klientów zamiast zatwierdzonych aplikacji i kolekcji, które powinny być wyświetlane. Opóźnienie może potrwać od kilku minut do godziny.
Utwórz aplikację programisty NFC i urządzenie programistyczne
Na urządzeniach z Androidem 10 lub starszym możesz skonfigurować obsługę NFC za pomocą Android Beam:
- Pobierz przykładową aplikację dla programistów NFC. Możesz użyć próbki w niezmienionej postaci bez dodawania elementów lub zmodyfikować ją pod kątem wartości domyślnych.
- Zainstaluj aplikację programisty na wybranym urządzeniu.
- Uruchom aplikację programisty NFC i wybierz Wczytaj domyślne dla
com.example.android.apis
. (Ten tekst może się różnić w zależności od ustawionych parametrów domyślnych).
Obsługa administracyjna urządzenia klienta
- Umieść programator lub tag NFC na nowym urządzeniu bądź takim, które zostało przywrócone do ustawień fabrycznych.
- Sprawdź, czy urządzenie pozostaje na początkowym ekranie powitalnym, który wyświetla się po uruchomieniu. Tekst jest określony w polu
Ready to send:{...}
w aplikacji programisty. - Poczekaj, aż DPC:
- Szyfruje urządzenie.
- Jeśli jest to urządzenie CDMA: aktywuje telefon, gdy wyświetlany jest interfejs telefonii (nie wymaga żadnych interakcji).
- Konfiguruje połączenie Wi-Fi.
- Pobiera plik APK dla com.example.android.apis.
- Instaluje plik com.example.android.apis.
- Ustawia administratora przykładowego urządzenia w domenie com.example.android.apis jako właściciela urządzenia.
- Wyświetla powiadomienie o powodzeniu, gdy właściciel urządzenia zostanie aktywowany.
- Po powrocie do strony głównej (kreator konfiguracji jest pomijany automatycznie) sprawdź, czy domena com.example.android.apis jest ustawiona jako właściciel urządzenia:
- W sekcji Ustawienia > Zabezpieczenia > Administratorzy urządzenia upewnij się, że nie można usunąć administratora przykładowego urządzenia.
- W sekcji Ustawienia > Użytkownicy > Użytkownicy i profile > Ty (właściciel) sprawdź, czy Właściciel jest jedynym dostępnym kontem (dane urządzenie może mieć tylko 1 aktywnego właściciela naraz).
Dodatkowe zasoby
Zaawansowana komunikacja NFC opisuje tematy takie jak praca z różnymi technologiami tagów, zapisywanie danych do tagów NFC oraz wysyłanie danych na pierwszym planie.
Metoda ręcznej instalacji DPC
Aby skonfigurować tryb właściciela profilu za pomocą metody ręcznej obsługi administracyjnej instalacji DPC, użytkownik pobiera DPC z Google Play i je instaluje. Następnie DPC przeprowadzi użytkownika przez resztę procesu, aby skonfigurować właściciela profilu na zarządzanym koncie Google.
DPC może dodać zarządzane konto Google przed utworzeniem profilu służbowego lub po nim. Na przykład DPC może utworzyć profil służbowy na podstawie danych logowania EMM użytkownika, zamiast pytać najpierw o zarządzane konto Google.
Konfigurowanie trybu właściciela profilu
Najpierw dodaj zarządzane konto Google
- Użytkownik pobiera DPC z Google Play i je instaluje.
- DPC dodaje zarządzane konto Google przed utworzeniem profilu służbowego za pomocą
AccountManager.addAccount()
. - DPC zaczyna działać w profilu osobistym i rozpoczyna proces tworzenia profilu służbowego za pomocą:
ACTION_PROVISION_MANAGED_PROFILE
— udostępnia profil służbowy.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— dodatkowe informacje z profilu służbowego, takie jak język, sieć Wi-Fi czy adres e-mail.EXTRA_PROVISIONING_ACCOUNT_TO_MIGRATE
— nazwa uwierzytelnionego konta do przeniesienia do nowego profilu służbowego.
- DPC w profilu służbowym kończy proces obsługi administracyjnej. Po utworzeniu profilu służbowego DPC będzie też działać w tym profilu. DPC w profilu służbowym kończy proces obsługi administracyjnej, przekazując zasady dla tego zarządzanego konta Google, upewniając się, że urządzenie nie jest w stanie przejętego urządzenia, i sprawdzając, czy są one egzekwowane (na przykład wymagają hasła).
- Po udostępnieniu profilu służbowego DPC otrzymuje transmisję
ACTION_PROFILE_PROVISIONING_COMPLETE
. - DPC w profilu osobistym wyłącza się samodzielnie lub użytkownik usuwa.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/images/google_acct_first.png?authuser=7&hl=pl)
Najpierw utwórz profil służbowy
- Użytkownik pobiera DPC z Google Play i je instaluje.
- DPC zaczyna działać w profilu osobistym i rozpoczyna proces tworzenia profilu służbowego za pomocą:
ACTION_PROVISION_MANAGED_PROFILE
— udostępnia profil służbowy.EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
— dodatkowe informacje z profilu służbowego, takie jak język, sieć Wi-Fi czy adres e-mail.
- DPC dodaje zarządzane konto Google za pomocą
AccountManager.addAccount()
. - DPC odbiera komunikat
ACTION_PROFILE_PROVISIONING_COMPLETE
i odczytujeEXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE
. - DPC w profilu służbowym kończy proces obsługi administracyjnej. Po utworzeniu profilu służbowego DPC będzie też działać w jego profilu. DPC w profilu służbowym kończy proces obsługi administracyjnej, przekazując zasady dotyczące zarządzanego konta Google, upewniając się, że urządzenie nie jest w stanie przejęte, i sprawdzając, czy zasady są egzekwowane (na przykład wymagają podania hasła).
- DPC włącza profil służbowy za pomocą
DevicePolicyManager.setProfileEnabled()
. - DPC w profilu osobistym wyłącza się samodzielnie lub użytkownik usuwa.
![](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/images/work_profile_first.png?authuser=7&hl=pl)
-
Metoda „Konto Google” w Androidzie 5.1 obsługuje tylko tryb właściciela profilu, a użytkownik może go skonfigurować tylko po kliknięciu Ustawienia > Dodaj konto. ↩