إدارة الأجهزة للسيارات

تتيح لك ميزة "إدارة الأجهزة" إدارة مركبة تعمل بنظام التشغيل Android Automotive (AAOS) عن بُعد. على سبيل المثال، قد يريد مالك المركبة إعادة ضبط وحدة المعلومات والترفيه على الإعدادات الأصلية عن بُعد.

في مجال السيارات، نقدّم فئتين من إدارة الأجهزة:

  • جهاز شخصي: مركبة يملكها مستهلِك مالك المركبة يدير السيارة عن بُعد. على سبيل المثال، يستخدم المالك تطبيق السيارة المتوافق مع الأجهزة الجوّالة لإعادة ضبط وحدة المعلومات والترفيه على الإعدادات الأصلية عن بُعد.
  • جهاز Enterprise: المركبة مملوكة لمؤسسة أو منظمة. يدير مشرف السيارة عن بُعد.

الأجهزة الشخصية

في سيناريو الجهاز الشخصي، تتطلّب إدارة المركبة عن بُعد مراعاة حالة القيادة في السيارة. على سبيل المثال، إذا فعَّل مالك المركبة إعادة الضبط على الإعدادات الأصلية عن بُعد، لن تتم إعادة ضبط المركبة على الإعدادات الأصلية إذا كان شخص آخر يقود السيارة.

وبالتالي، لدينا مجموعة من واجهات برمجة التطبيقات لإدارة الأجهزة مدمجة مع قيود حالة مساحة التخزين. يمكن لأي تطبيق نظام (التطبيقات المثبَّتة مسبقًا في قسم النظام) استخدام هذه واجهة برمجة التطبيقات باستخدام الأذونات الصحيحة.

واجهات برمجة تطبيقات إدارة الأجهزة الشخصية

واجهة برمجة التطبيقات الغرض
CarDevicePolicyManager.createUser()

يتم إنشاء مستخدم جديد على الجهاز في الخلفية.

كيف يتفاعل مع حالة القيادة؟

يتم إنشاء مستخدم جديد في الخلفية، بغض النظر عن حالة محرك الأقراص.

CarDevicePolicyManager.RemoveUser()

تؤدي هذه العملية إلى إزالة مستخدم حالي على الجهاز.

كيف يتفاعل مع حالة القيادة؟

إذا كان المستخدم المستهدَف في:

DevicePolicyManager.lockNow()

قفل حساب مستخدم حالي على الجهاز إذا كان لدى المستخدم بيانات اعتماد حالية لشاشة القفل (مثل رقم تعريف شخصي أو نقش)، تظل الشاشة مضاءة.

كيف يتفاعل ذلك مع حالة محرك الأقراص؟

إذا كان المستخدم المستهدَف في:

  • الخلفية، تستمر العملية.
  • الأولوية والسيارة متوقفة أو متوقفة مؤقتًا أو متحرّكة، يتم المتابعة إذا كان المستخدم في المقدّمة (بغض النظر عن حالة القيادة)، أو يتم تجاهلها في الحالات الأخرى. لا يخضع lockNow() لقيود حالة الإلهاء في تجربة المستخدم.
DevicePolicyManager.resetPassword()

قفل حساب مستخدم حالي على الجهاز من خلال ضبط بيانات اعتماد شاشة القفل، إذا لم يكن لدى المستخدم بيانات اعتماد حالية تبقى الشاشة مُشغَّلة.

كيف يتفاعل مع حالة القيادة؟

إذا كان المستخدم المستهدَف في:

DevicePolicyManager.wipeData()

يؤدي هذا الإجراء إلى إعادة ضبط الجهاز على الإعدادات الأصلية.

كيف يتفاعل مع حالة القيادة؟

بغض النظر عن حالة القيادة (متوقف متوقف مؤقتًا أو متحرك)، تستمر العملية. ينشر النظام إشعارًا لإعلام السائق بأنّه مطلوب إعادة ضبط الجهاز على الإعدادات الأصلية.

عندما تكون المركبة في وضع PARKING (ركن)، يمكن للسائق التفاعل مع الإشعار لاختيار إعادة ضبط الجهاز الآن أو لاحقًا (عند تشغيل السيارة في المرة التالية).

مثلاً:

إشعار إعادة الضبط على الإعدادات الأصلية

الشكل 1: ينشر النظام إشعارًا عند بدء عملية إعادة الضبط على الإعدادات الأصلية.

المركبة متوقفة

الشكل 2: عندما تكون المركبة في وضع PARKING (ركن)، يمكن للسائق التفاعل مع الإشعار لاختيار إعادة ضبط الجهاز الآن أو لاحقًا (عند تشغيل السيارة في المرة التالية).

يختار السائق "إعادة الضبط".

الشكل 3: إذا اختار السائق "إعادة الضبط لاحقًا"، ستظهر رسالة سريعة تشير إلى أنّه سيتم إعادة ضبط الجهاز على الإعدادات الأصلية في المرة التالية التي يتم فيها تشغيل السيارة.

أجهزة Enterprise

يمكن لأجهزة Android Automotive التي تعمل بالإصدار 13 من نظام التشغيل Android والإصدارات الأحدث الإعلان عن توفّر ميزة android.software.device_admin لتفعيل واجهات برمجة التطبيقات Device Management API للمؤسسات (للاطّلاع على مزيد من المعلومات، يُرجى الاطّلاع على DevicePolicyManager). يمكن للمؤسسة بعد ذلك استخدام تطبيق وحدة التحكّم بسياسة الجهاز (DPC) للتحكّم في سياسات الجهاز المحلية وتطبيقات النظام على الجهاز.

لا تتيح ميزة "إدارة السيارات" استخدام ملفات العمل، ما يعني أنّ حلّ الإدارة الوحيد المتوافق هو الجهاز المُدار بالكامل، وهو مخصّص للأجهزة المملوكة للشركة والتي تتحكّم المؤسسة في إدارتها بالكامل.

على المؤسسات التي تدير المركبة عن بُعد أيضًا مراعاة حالة قيادة السيارة. وبالتالي، يتم دمج إجراءات عن بُعد معيّنة أيضًا مع حالة القيادة في المركبة. على سبيل المثال، تنطبق عملية إعادة الضبط على الإعدادات الأصلية في DevicePolicyManager.setFactoryResetProtectionPolicy() أيضًا على المركبات المزوّدة بميزة "إدارة المؤسسات".

يمكن أن تُلقي أي واجهة برمجة تطبيقات من DevicePolicyManagercode> استثناءً (على سبيل المثال، إذا كانت المركبة تتحرك). في ما يلي قائمة جزئية بواجهات برمجة تطبيقات DevicePolicyManagercode>. لمزيد من المعلومات، يُرجى الاطّلاع على نظرة عامة على إدارة الأجهزة.

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

إدارة أجهزة المؤسسات لعدة مستخدمين

تعمل ميزة "إدارة الأجهزة للسيارات" مع الميزة "إدارة عدة مستخدمين". وهذا يعني أنّه يمكن لعدة سائقين استخدام المركبة نفسها المملوكة للشركة، مع الحفاظ على خصوصية بياناتهم وعدم إطلاع السائقين الآخرين عليها من خلال استخدام مستخدميهم.

يمكن للمشرف استخدام تطبيق "وحدة التحكّم بسياسة الجهاز" (DPC) كما هو موضّح في مقالة إنشاء وحدة تحكّم بسياسة الجهاز للتحكّم في السياسات على مستوى الجهاز أو على مستوى المستخدم.

تستخدم الإصدارات المخصّصة للسيارات عادةً وضع "مستخدم النظام بلا واجهة مستخدم رسومية"، وفي هذه الحالة سيتم ضبط "مُشغِّل سياسة الجهاز" (DPC) على أنّه "مالك الجهاز" (DO) لمستخدم النظام و"مالك الملف الشخصي" (PO) لكل مستخدم آخر. على المشرف عن بُعد ربط مستخدمي طلبات الشراء، لأنّ بعض واجهات برمجة التطبيقات (مثل requestBugreport()) لا تتوفّر إلا إذا كان جميع المستخدمين مرتبطين. بعد ذلك، على المشرف عن بُعد اختيار وحدة التحكّم في حدود الجلسة المناسبة لتنفيذ الإجراءات. إذا كان الإجراء مرتبطًا بال الجهاز (مثل إعادة الضبط على الإعدادات الأصلية من خلال wipeData())، من المفترض أن يستخدم DPC للتشغيل الآلي. إذا كان مرتبطًا بمستخدم (مثل addUserRestriction())، يجب أن يستخدم DPC الخاص بجهة العمل.

يحتاج تطبيق DPC إلى واجهة برمجة تطبيقات بين وحدة التحكّم في حدود الجلسة ووحدة التحكّم في حدود العملية. نقترح استخدام واجهة برمجة التطبيقات Connect Apps API الموضّحة في مقالة تطبيقات العمل والتطبيقات الشخصية المرتبطة.

لمزيد من المعلومات عن كيفية إدارة تطبيق إدارة الخدمات في المؤسسة لمستخدمين متعدّدين، يُرجى الاطّلاع على مقالة المستخدمون التابعون.