Zarządzanie urządzeniami dla motoryzacji

Zarządzanie urządzeniami umożliwia zdalne zarządzanie pojazdem z systemem Android Automotive OS (AAOS). Na przykład właściciel pojazdu może chcieć zdalnie przywrócić ustawienia fabryczne urządzenia informacyjno-rozrywkowego.

W Automotive udostępniamy dwie kategorie zarządzania urządzeniami:

  • Urządzenie osobiste. Pojazd jest własnością konsumenta. Właściciel pojazdu zdalnie zarządza samochodem. Na przykład właściciel używa aplikacji mobilnej pojazdu, aby zdalnie przywrócić ustawienia fabryczne urządzenia informacyjno-rozrywkowego.
  • Urządzenie korporacyjne. Pojazd jest własnością przedsiębiorstwa lub organizacji. Administrator zdalnie zarządza samochodem.

Urządzenia osobiste

W przypadku urządzenia osobistego zdalne zarządzanie pojazdem wymaga uwzględnienia stanu napędu samochodu. Na przykład, jeśli właściciel pojazdu zdalnie uruchomi przywracanie ustawień fabrycznych, nie należy przywracać ustawień fabrycznych pojazdu, jeśli jest aktywnie prowadzony przez inną osobę.

W związku z tym mamy zestaw interfejsów API do zarządzania urządzeniami zintegrowanych z ograniczeniami stanu dysku. Te interfejsy API mogą być wywoływane przez dowolną aplikację systemową (aplikacje preinstalowane na partycji systemowej) z odpowiednimi uprawnieniami.

Interfejsy API do zarządzania urządzeniami osobistymi

API Zamiar
CarDevicePolicyManager.createUser()

Tworzy w tle nowego użytkownika na urządzeniu.

Jak to wpływa na stan dysku?

Nowy użytkownik jest tworzony w tle, niezależnie od stanu dysku.

CarDevicePolicyManager.RemoveUser()

Usuwa istniejącego użytkownika na urządzeniu.

Jak to wpływa na stan dysku?

Jeśli użytkownik docelowy znajduje się w:

DevicePolicyManager.lockNow()

Blokuje istniejącego użytkownika na urządzeniu. Jeśli użytkownik ma istniejące dane uwierzytelniające ekranu blokady (na przykład kod PIN lub wzór), wyświetlacz pozostaje włączony.

Jak to wpływa na stan dysku?

Jeśli użytkownik docelowy znajduje się w:

  • Tło , operacja trwa.
  • Na pierwszym planie i samochód jest PARKOWANY lub NA BIEGU JAŁOWYM lub W RUCHU , operacja jest kontynuowana, jeśli użytkownik znajduje się na pierwszym planie (niezależnie od stanu jazdy), lub jest ignorowana w innym przypadku. lockNow() nie jest ograniczona stanem rozproszenia UX.
DevicePolicyManager.resetPassword()

Blokuje istniejącego użytkownika na urządzeniu poprzez ustawienie poświadczeń na ekranie blokady, jeśli użytkownik nie ma istniejących poświadczeń. Wyświetlacz pozostaje włączony.

Jak to wpływa na stan dysku?

Jeśli użytkownik docelowy znajduje się w:

  • Tło , operacja trwa.
  • Na pierwszym planie samochód jest zaparkowany lub, NA BIEGU JAŁOWYM , operacja jest kontynuowana.
  • Na pierwszym planie i samochód jest w RUCHU , zgłaszany jest kod wyjątku.
DevicePolicyManager.wipeData()

Powoduje przywrócenie ustawień fabrycznych na urządzeniu.

Jak to wpływa na stan dysku?

Niezależnie od stanu napędu ( PARKOWANY , BIEGU JAŁOWEGO lub W RUCHU ), operacja jest kontynuowana. System wysyła powiadomienie informujące kierowcę o konieczności przywrócenia ustawień fabrycznych.

Gdy pojazd jest zaparkowany, kierowca może skorzystać z powiadomienia i wybrać opcję zresetowania urządzenia teraz lub później (przy następnym uruchomieniu samochodu).

Na przykład:

Powiadomienie o przywróceniu ustawień fabrycznych

Rysunek 1. System wysyła powiadomienie po uruchomieniu przywracania ustawień fabrycznych.

Pojazd jest zaparkowany

Rysunek 2. Gdy pojazd jest zaparkowany, kierowca może wejść w interakcję z powiadomieniem i wybrać opcję zresetowania urządzenia teraz lub później (przy następnym uruchomieniu samochodu).

Kierowca wybiera Reset

Rysunek 3. Jeśli kierowca zdecyduje się zresetować później, pojawi się komunikat toastowy informujący, że przy następnym uruchomieniu samochodu urządzenie zostanie zresetowane do ustawień fabrycznych.

Urządzenia korporacyjne

Urządzenia z systemem Android Automotive OS z systemem Android 13 lub nowszym mogą zadeklarować obsługę funkcji android.software.device_admin , aby włączyć interfejsy API zarządzania urządzeniami dla przedsiębiorstw (aby dowiedzieć się więcej, zobacz DevicePolicyManager ). Organizacja może następnie użyć aplikacji Device Policy Controller (DPC) do kontrolowania lokalnych zasad dotyczących urządzeń i aplikacji systemowych na urządzeniu.

Firma Automotive nie obsługuje profili służbowych , co oznacza, że ​​jedynym obsługiwanym rozwiązaniem do zarządzania jest w pełni zarządzane urządzenie , które jest przeznaczone dla urządzeń będących własnością firmy, nad którymi organizacja ma pełną kontrolę zarządczą.

Przedsiębiorstwa zdalnie zarządzające pojazdem muszą także wziąć pod uwagę stan napędu samochodu. Dlatego też określone działania zdalne są również zintegrowane ze stanem jazdy pojazdu. Na przykład proces przywracania ustawień fabrycznych w DevicePolicyManager.setFactoryResetProtectionPolicy() ma zastosowanie również do pojazdów z obsługą korporacyjną.

Dowolny interfejs API z kodu DevicePolicyManager > może zgłosić wyjątek (na przykład, jeśli pojazd się porusza). Poniżej znajduje się częściowa lista kodów DevicePolicyManager >API. Aby dowiedzieć się więcej, zobacz Omówienie administrowania urządzeniami .

  • DevicePolicyManager.removeActiveAdmin()
  • DevicePolicyManager.setFactoryResetProtectionPolicy()
  • DevicePolicyManager.installCaCert()
  • DevicePolicyManager.uninstallCaCert()
  • DevicePolicyManager.installKeyPair()
  • DevicePolicyManager.removeKeyPair()

Zarządzanie urządzeniami w przedsiębiorstwie dla wielu użytkowników

Zarządzanie urządzeniami w branży motoryzacyjnej współpracuje z obsługą wielu użytkowników . Oznacza to, że wielu kierowców może korzystać z tego samego pojazdu należącego do firmy, zachowując jednocześnie prywatność swoich danych i zapobiegając ich udostępnianiu innym kierowcom, korzystając z usług ich własnych użytkowników.

Administrator może używać aplikacji Device Policy Controller (DPC) zgodnie z opisem w sekcji Tworzenie kontrolera zasad urządzeń w celu kontrolowania zasad dotyczących całego urządzenia lub specyficznych dla użytkownika.

Kompilacje samochodowe zazwyczaj korzystają z bezgłowego trybu użytkownika systemu, w którym to przypadku kontroler zasad urządzeń (DPC) zostanie ustawiony jako właściciel urządzenia (DO) użytkownika systemu i właściciel profilu (PO) każdego innego użytkownika. Zdalny administrator powinien powiązać użytkowników PO, ponieważ niektóre interfejsy API (takie jak requestBugreport() ) są dostępne tylko wtedy, gdy wszyscy użytkownicy są powiązani. Następnie zdalny administrator powinien wybrać odpowiedni DPC do wykonania działań. Jeśli akcja jest powiązana z urządzeniem (np. resetowanie do ustawień fabrycznych za pomocą wipeData() ), powinno użyć DO DPC. Jeśli jest powiązany z użytkownikiem (np. addUserRestriction() ), powinien używać PO DPC.

Aplikacja DPC wymaga IPC pomiędzy DO i PO. Sugerujemy interfejs API aplikacji Connect opisany w części Połączone aplikacje służbowe i osobiste .

Aby uzyskać więcej informacji na temat sposobu, w jaki aplikacja DPC zarządza wieloma użytkownikami, zobacz Użytkownicy powiązani .