دعم عدة مستخدمين

يدعم Android عدة مستخدمين على جهاز Android واحد عن طريق فصل حسابات المستخدمين وبيانات التطبيق. على سبيل المثال ، قد يسمح الآباء لأطفالهم باستخدام الكمبيوتر اللوحي الخاص بالعائلة ، أو يمكن للعائلة مشاركة السيارة ، أو قد يشارك فريق الاستجابة الحرجة جهازًا محمولًا للقيام بواجب أثناء الاتصال.

المصطلح

يستخدم Android المصطلحات التالية عند وصف مستخدمي Android والحسابات.

عام

تستخدم إدارة جهاز Android المصطلحات العامة التالية.

  • العضو. ويهدف كل مستخدم لاستخدامها من قبل شخص طبيعي مختلفة. كل مستخدم لديه بيانات تطبيق مميزة وبعض الإعدادات الفريدة ، بالإضافة إلى واجهة مستخدم للتبديل صراحة بين المستخدمين. يمكن للمستخدم العمل في الخلفية عندما يكون مستخدم آخر نشطًا ؛ يدير النظام إغلاق المستخدمين للحفاظ على الموارد عند الاقتضاء. المستخدمين الثانوي يمكن أن تنشأ إما مباشرة من خلال واجهة المستخدم أو من إدارة الأجهزة التطبيق.
  • حساب. يتم تضمين الحسابات داخل مستخدم ولكن لم يتم تحديدها من قبل المستخدم ، كما لم يتم تحديد المستخدم بواسطة أي حساب معين أو ربطه به. يحتوي المستخدمون وملفات التعريف على حساباتهم الفريدة الخاصة بهم ولكن ليس مطلوبًا أن يكون لديهم حسابات حتى تعمل. تختلف قائمة الحسابات حسب المستخدم. لمزيد من التفاصيل، يرجى الرجوع إلى الدرجة حساب الوضوح.
  • الشخصي. قام ملف التعريف بفصل بيانات التطبيق ولكنه يشارك بعض الإعدادات على مستوى النظام (على سبيل المثال ، Wi-Fi و Bluetooth). الملف الشخصي هو مجموعة فرعية من وجود المستخدم ومرتبط به. يمكن للمستخدم الحصول على ملفات تعريف متعددة. يتم إنشاء ملفات تعريف من خلال إدارة الأجهزة التطبيق. يحتوي ملف التعريف دائمًا على ارتباط غير قابل للتغيير مع مستخدم رئيسي ، يحدده المستخدم الذي أنشأ الملف الشخصي. لا تتواجد الملفات الشخصية بعد عمر المستخدم الذي قام بإنشائه.
  • التطبيق. توجد بيانات التطبيق داخل كل مستخدم مرتبط. يتم وضع الحماية لبيانات التطبيق من التطبيقات الأخرى داخل نفس المستخدم. يمكن أن تتفاعل التطبيقات داخل نفس المستخدم مع بعضها البعض عبر IPC. لمزيد من التفاصيل، يرجى الرجوع إلى الروبوت للمشاريع .

فئات المستخدمين

تستخدم إدارة جهاز Android الفئات التالية من المستخدمين.

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

فئات الملفات الشخصية

تستخدم إدارة جهاز Android الفئات التالية من الملفات الشخصية.

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

أنواع المستخدمين

الروبوت 11 وضعت تصنيف أعلاه من المستخدمين وملامح إلى أنواع المستخدم واضحة المعالم، تمثل جميع أنواع مختلفة من المستخدمين وملامح المسموح به من قبل ميزة متعدد المستخدمين الروبوت.

يتم تعريف أنواع المعرفة من قبل المستخدم قبل AOSP في frameworks/base/core/java/android/os/UserManager.java وتشمل حاليا:

  • android.os.usertype.full.SYSTEM
  • android.os.usertype.full.SECONDARY
  • android.os.usertype.full.GUEST
  • android.os.usertype.full.DEMO
  • android.os.usertype.full.RESTRICTED
  • android.os.usertype.profile.MANAGED
  • android.os.usertype.system.HEADLESS

مصنعي المعدات الأصلية لديها القدرة على تكوين هذه الأنواع المستخدم عن طريق تغطية frameworks/base/core/res/res/xml/config_user_types.xml الملف. هذا يسهل تغيير التكوين الافتراضي لكل نوع مستخدم ، بما في ذلك القيود الافتراضية والرموز والشارات والحد الأقصى المسموح به من عدد المستخدمين.

وبالإضافة إلى أنواع المستخدم AOSP شكلي، يمكن أن مصنعي المعدات الأصلية تحديد أنواع الشخصية الجديدة باستخدام frameworks/base/core/res/res/xml/config_user_types.xml الملف. يتيح ذلك لمصنعي المعدات الأصلية تقديم أنواع ملفات التعريف غير المدارة الخاصة بهم إذا رغبت في ذلك. ومع ذلك ، تقع على عاتق الشركة المصنعة للمعدات (OEM) مسؤولية إجراء تعديلات على النظام الأساسي كما هو مطلوب لدعم التغييرات ، بما في ذلك تعديل أي رمز يتحقق من ملفات التعريف المدارة للتعامل الآن مع نوع ملف التعريف الجديد إذا كان ذلك مناسبًا.

تمكين متعدد المستخدمين

اعتبارًا من Android 5.0 ، يتم تعطيل ميزة تعدد المستخدمين افتراضيًا. لتمكين هذه الميزة، يجب أن الشركات المصنعة للأجهزة تحديد تراكب الموارد الذي يحل محل القيم التالية في frameworks/base/core/res/res/values/config.xml :

<!--  Maximum number of supported users -->
<integer name="config_multiuserMaximumUsers">1</integer>
<!--  Whether Multiuser UI should be shown -->
<bool name="config_enableMultiUserUI">false</bool>

لتطبيق هذا تراكب وتمكين الضيوف والمستخدمين الثانوي على الجهاز، استخدم DEVICE_PACKAGE_OVERLAYS ميزة للنظام بناء الروبوت لتحل محل القيم:

  • config_multiuserMaximumUsers مع أكبر قيمة من 1
  • config_enableMultiUserUI مع true

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

إدارة عدة مستخدمين

يتم تنفيذ إدارة المستخدمين وملامح (باستثناء لمحات مقيد) عن طريق التطبيقات التي برمجيا استدعاء وAPI في DevicePolicyManager فئة لتقييد استخدام.

المدارس والمؤسسات قد تستخدم المستخدمين وملامح لإدارة عمر ونطاق التطبيقات والبيانات على الأجهزة، وذلك باستخدام أنواع المذكورة أعلاه بالتزامن مع API UserManager لبناء حلول فريدة مصممة خصيصا لحالات استخدامها.

سلوك نظام متعدد المستخدمين

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

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

ملاحظة: لتمكين أو تعطيل وظائف الهاتف والرسائل النصية القصيرة لمستخدم الثانوية، انتقل إلى إعدادات> المستخدمين، حدد المستخدم، والتبديل المكالمات الهاتفية وتحديد SMS لإيقاف السماح.

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

عند توظيف عدة مستخدمين على جهاز Android ، ضع في اعتبارك السلوك التالي:

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

يتضمن Android 7.0 العديد من التحسينات ، بما في ذلك:

  • ملف شخصي للعمل تبديل. يمكن للمستخدمين تعطيل ملفهم الشخصي المُدار (عندما لا يكونون في العمل مثلاً). تتحقق هذه الوظيفة من خلال إيقاف المستخدم ؛ UserManagerService يدعو ActivityManagerNative#stopUser() .
  • دائما على VPN. يمكن الآن تعيين تطبيقات VPN على التشغيل الدائم من قبل المستخدم أو Device DPC أو Managed Profile DPC (ينطبق فقط على تطبيقات الملفات الشخصية المدارة). عند التمكين ، لا يمكن للتطبيقات الوصول إلى الشبكة العامة (يتم إيقاف الوصول إلى موارد الشبكة حتى يتم توصيل VPN ويمكن توجيه الاتصالات عبرها). الأجهزة التي التقرير device_admin يجب أن تنفذ دائما على VPN.

لمزيد من التفاصيل على الروبوت ميزات إدارة الجهاز 7.0، راجع الروبوت للعمل .

متعدد المستخدمين في Android Automotive

يعتمد Android Automotive على تطبيق Android متعدد المستخدمين لتوفير تجربة جهاز مشتركة.

أنواع مستخدمي السيارات

بالإضافة إلى أنواع المستخدمين المذكورة أعلاه ، فإن تصميمات السيارات تتميز بهذه الأنواع من المستخدمين:

  • مستخدم نظام مقطوعة الرأس. يستضيف مستخدم النظام جميع خدمات النظام. لدعم العديد من المستخدمين على السيارات، ويجب أن يكون للمستخدم نظام مقطوعة الرأس. لا يوجد سوى مستخدم واحد مقطوع الرأس. مستخدم نظام مقطوعة الرأس:
    • يجب أن يعمل دائمًا في الخلفية.
    • لا يمكن للمستخدم إزالته أو الوصول إليه مباشرة إلا في حالة توفير الجهاز. على سبيل المثال ، لا يمكن للمستخدمين التبديل إلى نوع المستخدم هذا لأداء مهام مثل تنزيل التطبيقات أو إضافة حسابات.
    • لا يمكن مسحها إلا من خلال إعادة ضبط المصنع.
  • المستخدمون العاديون. نفس المستخدمين الثانوي ، المذكورة أعلاه، إلا أن المستخدمين الثانوي:
    • لا تعمل في الخلفية (بعد التبديل بعيدًا عن).
    • يمكن إنشاؤه مباشرة من خلال واجهة المستخدم.
    • لديك بيانات تطبيق منفصلة ولكن مع مشاركة بعض الإعدادات على مستوى النظام. على سبيل المثال ، Wi-Fi و Bluetooth.

تحفظات

تنطبق الاستثناءات التالية على مستخدمي النظام مقطوعة الرأس والمستخدمين العاديين (الثانويين) في السيارات:

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

تمكين مستخدم نظام مقطوعة الرأس

اعتبارًا من Android 10 ، يمكن استخدام ميزة المستخدمين المتعددين لحالات استخدام السيارات. تشمل الفروق المهمة ما يلي:

  • مستخدم النظام مقطوع الرأس ويعمل فقط في الخلفية.
  • لا يتفاعل المستخدمون البشريون مع مستخدم النظام.

لتمكين مستخدم النظام بدون رأس ، يجب على الشركات المصنعة للأجهزة تمكين المستخدمين المتعددين كما هو موضح أعلاه.

عندما يتم تمكين المستخدم مقطوعة الرأس:
  1. أن يعلن الجهاز أن تكون السيارات، إضافة ميزة android.hardware.type.automotive .
  2. تعيين ro.fw.headless_system_user إلى true .
  3. تعيين قيمة config_multiuserMaximumUsers إلى 2 (أو أعلى).

لمزيد من المعلومات، راجع دعم متعدد المستخدمين في السيارات.