Otomotiv için cihaz yönetimi

Cihaz yönetimi, Android Automotive OS (AAOS) çalıştıran bir aracı uzaktan yönetmenize olanak tanır. Örneğin, bir araç sahibi bilgi-eğlence sistemini uzaktan fabrika ayarlarına sıfırlamak isteyebilir.

Otomotiv'te iki kategoride cihaz yönetimi sunuyoruz:

  • Kişisel cihaz. Araç bir tüketiciye aittir. Aracın sahibi arabayı uzaktan yönetir. Örneğin, araç sahibi, bilgi-eğlence birimini uzaktan fabrika ayarlarına sıfırlamak için aracın mobil uygulamasını kullanıyor.
  • Kurumsal cihaz. Araç bir kuruluşa veya işletmeye aittir. Bir yönetici, arabayı uzaktan yönetiyor.

Kişisel cihazlar

Kişisel cihaz senaryosundaki aracı uzaktan yönetmek için aracın sürüş durumunu dikkate almanız gerekir. Örneğin, aracın sahibi uzaktan fabrika ayarlarına sıfırlama işlemini tetiklerse araç başka bir kişi tarafından etkin bir şekilde kullanılıyorsa fabrika ayarlarına sıfırlanmamalıdır.

Bu sayede, sürücü durumu kısıtlamalarıyla entegre edilmiş bir dizi cihaz yönetimi API'sine sahibiz. Bu API'ler, doğru izinlere sahip herhangi bir sistem uygulaması (sistem bölümünde önceden yüklenmiş uygulamalar) tarafından çağrılabilir.

Kişisel cihaz yönetimi API'leri

API Amaç
CarDevicePolicyManager.createUser()

Arka planda cihazda yeni bir kullanıcı oluşturur.

Drive durumuyla nasıl etkileşim kurar?

Sürücü durumundan bağımsız olarak arka planda yeni bir kullanıcı oluşturulur.

CarDevicePolicyManager.RemoveUser()

Cihazdaki mevcut bir kullanıcıyı kaldırır.

Drive durumuyla nasıl etkileşim kurar?

Hedef kullanıcı:

  • Arka planda, işlem devam ediyor.
  • Ön planda ve araç PARK HALİNDE veya RÖLANTIDE ise işlem devam eder.
  • Ön plan ve araba HAREKETLİ ise bir istisna kodu yayınlanır.
DevicePolicyManager.lockNow()

Cihazdaki mevcut bir kullanıcıyı kilitler. Kullanıcının mevcut kilit ekranı kimlik bilgileri (örneğin, PIN veya desen) varsa ekran açık kalır.

Bu, sürüş durumuyla nasıl etkileşimde bulunur?

Hedef kullanıcı:

  • Arka plan: İşlem devam eder.
  • Ön planda ve araba PARK HALİNDE veya BOŞTA veya HAREKET HALİNDE ise kullanıcı ön plandaysa (sürüş durumundan bağımsız olarak) devam eder veya aksi takdirde yoksayılır. lockNow(), kullanıcı deneyimi dikkat dağıtıcı duruma göre kısıtlanmıyor.
DevicePolicyManager.resetPassword()

Kullanıcının mevcut kimlik bilgileri yoksa kilit ekranı kimlik bilgisi ayarlayarak cihazdaki mevcut bir kullanıcıyı kilitler. Ekran açık kalır.

Drive durumuyla nasıl etkileşim kurar?

Hedef kullanıcı aşağıdaki gruplardaysa:

  • Arka plan: İşlem devam eder.
  • Ön plan ve araba BEKLEMEDE ya da BİTİŞTİR durumundaysa işlem devam eder.
  • Ön planda ve araba HAREKET EDERKEN ise bir istisna kodu oluşturulur.
DevicePolicyManager.wipeData()

Cihazda fabrika ayarlarına sıfırlama işlemi tetiklenir.

Drive durumuyla nasıl etkileşim kurar?

Sürüş durumundan (PARKED, IDLING veya MOVING) bağımsız olarak işlem devam eder. Sistem, sürücüye fabrika ayarlarına sıfırlama işleminin gerektiğini bildirmek için bir bildirim yayınlar.

Araç PARK HALİNDEyken sürücü, cihazı şimdi veya daha sonra (araba bir sonraki sefer çalıştırıldığında) sıfırlamayı seçmek için bildirimle etkileşime geçebilir.

Örnek:

Fabrika ayarlarına sıfırlama bildirimi

Şekil 1. Fabrika ayarlarına sıfırlama işlemi tetiklendiğinde sistem bildirimi gönderilir.

Araç PARK EDİLMİŞ

Şekil 2. Araç PARK HALİNDEyken sürücü, cihazı şimdi veya daha sonra (araba bir sonraki sefer çalıştırıldığında) sıfırlamayı seçmek için bildirimle etkileşim kurabilir.

Sürücü Sıfırla'yı seçer

Şekil 3. Sürücü "Sonra sıfırla"yı seçerse cihazın, araç bir sonraki sefer çalıştırıldığında fabrika ayarlarına sıfırlanacağını belirten bir pop-up mesajı gösterilir.

Kurumsal cihazlar

Android 13 ve sonraki sürümleri çalıştıran Android Automotive OS cihazlar, kurumsal cihaz yönetimi API'lerini etkinleştirmek için android.software.device_admin özelliğini desteklediğini beyan edebilir (daha fazla bilgi için DevicePolicyManager bölümüne bakın). Daha sonra kuruluş, cihazdaki yerel cihaz politikalarını ve sistem uygulamalarını kontrol etmek için bir cihaz politikası denetleyici (DPC) uygulaması kullanabilir.

Automotive, iş profillerini desteklemez. Bu nedenle, desteklenen tek yönetim çözümü tümüyle yönetilen cihazdır. Bu cihazlar, kuruluşun tam yönetim kontrolüne sahip olduğu şirkete ait cihazlar için tasarlanmıştır.

Aracı uzaktan yöneten kuruluşlar, aracın sürüş durumunu da dikkate almalıdır. Bu nedenle, belirli uzaktan işlemler de aracın sürüş durumuyla entegre edilir. Örneğin, DevicePolicyManager.setFactoryResetProtectionPolicy()'deki fabrika ayarlarına sıfırlama akışı, kurumsal özellikli araçlar için de geçerlidir.

DevicePolicyManagercode> içindeki herhangi bir API istisna atabilir (örneğin, araç hareket ediyorsa). DevicePolicyManagercode> API'lerinin kısmi listesi aşağıda verilmiştir. Daha fazla bilgi edinmek için Cihaz yönetimine genel bakış başlıklı makaleyi inceleyin.

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

Birden fazla kullanıcı için kurumsal cihaz yönetimi

Automotive için cihaz yönetimi, çoklu kullanıcı desteği ile çalışır. Bu sayede, şirkete ait bir aracı birden fazla sürücü kullanabilir ancak kendi kullanıcılarını kullanarak veri gizliliklerini koruyabilir ve diğer sürücülerin erişmesine engel olabilir.

Yönetici, cihaz genelindeki veya kullanıcıya özel politikaları kontrol etmek için Cihaz politikası denetleyici oluşturma bölümünde açıklandığı şekilde bir cihaz politikası denetleyici (DPC) uygulaması kullanabilir.

Otomotiv derlemelerinde genellikle gözetimsiz sistem kullanıcı modu kullanılır. Bu durumda Device Policy Denetleyicisi (DPC), sistem kullanıcısının Cihaz Sahibi (DO) ve diğer tüm kullanıcıların Profil Sahibi (PO) olarak ayarlanır. Bazı API'ler (requestBugreport() gibi) yalnızca tüm kullanıcılar ilişkilendirilmişse kullanılabilir olduğundan uzak yönetici, PO kullanıcılarını ilişkilendirmelidir. Ardından uzak yönetici, işlem yapmak için uygun DPC'yi seçmelidir. İşlem cihazla ilişkilendirilmişse (wipeData() üzerinden fabrika ayarlarına sıfırlama gibi) DO DPC kullanılmalıdır. Bir kullanıcıyla (addUserRestriction() gibi) ilişkilendirilmişse PO DPC'yi kullanmalıdır.

DPC uygulamasının DO ile PO arasında bir IPC'ye ihtiyacı vardır. Bağlı iş uygulamaları ve kişisel uygulamalar bölümünde açıklanan Connect Apps API'yi öneririz.

Bir DPC uygulamasının birden fazla kullanıcıyı nasıl yönettiği hakkında daha fazla bilgi edinmek için İlişkili kullanıcılar sayfasını inceleyin.