دليل مطوّري البرامج

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

المتطلّبات الأساسية

  1. لقد أنشأت تطبيق Android.
  2. أنت جاهز لتعديل تطبيقك بحيث يعمل بشكل أفضل مع المؤسسات.
  3. الحد الأدنى للإصدار: Android 5.0 Lollipop، الإصدار المقترَح: Android 6.0 Marshmallow والإصدارات الأحدث.

ملاحظة: يتم دمج ميزات المؤسسة من Android في معظم الأجهزة التي تعمل بالإصدار 5.0 من نظام التشغيل Android، إلا أن الإصدار 6.0 من نظام التشغيل Android والإصدارات الأحدث يوفر ميزات إضافية، لا سيما في ما يتعلق بالأجهزة المخصصة.

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

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

الميزات الرئيسية للملف الشخصي للعمل

  • ملف شخصي منفصل وآمن
  • Google Play للأعمال لتوزيع التطبيقات
  • تطبيقات العمل المنفصلة التي تحمل شارة
  • إمكانات إدارة الملف الشخصي فقط التي يتحكّم فيها المشرف

مزايا الملف الشخصي للعمل على Android 5.0 والإصدارات الأحدث

  • تشفير الجهاز بالكامل
  • حزمة تطبيق Android واحدة (APK) لكل من الملفين الشخصيين عند وجود ملف شخصي وملف شخصي للعمل على الجهاز
  • تقتصر وحدة التحكّم بسياسة الجهاز (DPC) على الملف الشخصي للعمل.
  • إدارة الجهاز عبر فئة DevicePolicyManager

اعتبارات بشأن الملفات الشخصية للعمل

منع تكرار الأغراض بين الملفات الشخصية

ومن الصعب معرفة الأغراض التي يمكن أن تتقاطع بين الملفات الشخصية وتلك التي تم حظرها. الطريقة الوحيدة لمعرفة ذلك هي بالاختبار. قبل أن يبدأ تطبيقك نشاطًا، عليك التأكّد من أنّه قد تم حلّ الطلب من خلال الاتصال برقم Intent.resolveActivity().

  • وإذا تم عرض null، لا يتم حلّ الطلب.
  • وإذا تم عرض شيء، يعني ذلك أنّ الغرض من العرض يحلّ، ويمكن إرسال الهدف بأمان.

ملاحظة: للحصول على تعليمات الاختبار المفصَّلة، اطّلِع على القسم منع ملفات Intent غير صالحة.

مشاركة الملفات بين الملفات الشخصية

يستخدم بعض المطوّرين معرِّفات الموارد المنتظمة (URI) لوضع علامة على مسارات الملفات في Android. ومع ذلك، بسبب توفُّر أنظمة ملفات منفصلة عند توفُّر ملف شخصي للعمل، ننصح بما يلي:

استخدام:
معرّفات الموارد المنتظمة (URI) للمحتوى
  • تتضمّن معرّفات الموارد المنتظمة (URI) للمحتوى المرجع والمسار والمعرّف الخاصَّين بملف محدّد. يمكنك إنشاء هذا باستخدام الفئة الفرعية FileProvider. مزيد من المعلومات
  • يمكنك مشاركة ومنح الأذونات للوصول إلى معرّف الموارد المنتظم (URI) للمحتوى باستخدام Intent. ولا يمكن تمرير الأذونات إلا عبر حدود الملف الشخصي باستخدام ملفات Intent. إذا منحت تطبيقًا آخر أذونات الوصول إلى ملفك باستخدام Context.grantUriPermission()، لا يتم منحه سوى لهذا التطبيق في الملف الشخصي نفسه.
لا تستخدم:
معرّف الموارد المنتظم (URI) للملف
  • تحتوي على المسار المطلق للملف على مساحة تخزين الجهاز.
  • إنّ معرّف الموارد المنتظم (URI) لمسار الملف الصالح على أحد الملفين الشخصيين ليس صالحًا على الملف الشخصي الآخر.
  • في حال إرفاق معرّف موارد منتظم (URI) للملف، لن يتمكّن المعالج من الوصول إلى الملف في ملف شخصي آخر.

الخطوات التالية: بعد أن يتوافق تطبيقك مع الملفات الشخصية المُدارة، عليك اختباره في ملف شخصي للعمل. راجع اختبار تطبيقك.

تنفيذ عمليات الضبط المُدارة

عمليات الضبط المُدارة هي مجموعة من التعليمات التي يمكن لمشرفي تكنولوجيا المعلومات استخدامها لإدارة الأجهزة الجوّالة للمستخدمين بطريقة معيّنة. هذه التعليمات شاملة ومتاحة على أيٍ من أنظمة إدارة الخدمات الجوّالة للمؤسسات (EMM)، ما يسمح للمشرفين بضبط التطبيقات عن بُعد على هواتف المستخدمين.

إذا كنت تطور تطبيقات لنشاط تجاري أو حكومي، قد تحتاج إلى استيفاء مجموعة المتطلبات المحددة في مجالك. باستخدام عمليات الضبط المُدارة، يمكن لمشرف تكنولوجيا المعلومات تحديد الإعدادات عن بُعد وفرض السياسات لتطبيقات Android للمستخدمين، على سبيل المثال:

  • ضبط ما إذا كان يمكن للتطبيق مزامنة البيانات عبر شبكة الجوّال/شبكة الجيل الثالث أو شبكة Wi-Fi فقط
  • السماح بعناوين URL أو حظرها على متصفِّح ويب
  • ضبط إعدادات البريد الإلكتروني لأحد التطبيقات
  • تفعيل الطباعة أو إيقافها
  • إدارة الإشارات

أفضل الممارسات لتنفيذ عمليات الضبط المُدارة

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

عند تشغيل التطبيق للمرّة الأولى

بعد إطلاق أحد التطبيقات، يمكنك معرفة ما إذا كان قد تم ضبط عمليات الضبط المُدارة من قبل لهذا التطبيق في onStart() أو onResume(). بالإضافة إلى ذلك، يمكنك معرفة ما إذا كان تطبيقك مُدارًا أم غير مُدار. على سبيل المثال، إذا كانت getApplicationRestrictions() تعرض:

  • مجموعة من القيود الخاصة بالتطبيقات: يمكنك ضبط عمليات الضبط المُدارة بدون مطالبة (بدون الحاجة إلى إدخال المستخدم).
  • حزمة فارغة: يعمل تطبيقك كما لو أنّه غير مُدار (على سبيل المثال، سلوك التطبيق في الملف الشخصي).
  • حزمة تتضمّن زوجًا من قيمة مفتاح واحد تم ضبط KEY_RESTRICTIONS_PENDING على "صحيح": تتم إدارة تطبيقك، ولكن لم يتم ضبط وحدة التحكّم بسياسة الجهاز بشكلٍ صحيح. يجب حظر هذا المستخدم من تطبيقك وتوجيهه إلى مشرف تكنولوجيا المعلومات لديه.

التعرّف على التغييرات في عمليات الضبط المُدارة

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

  • قيود الجلب عند الإطلاق: من المفترض أن يتصل تطبيقك بـ getApplicationRestrictions() في onStart() وonResume()، ومقارنته بالقيود القديمة لمعرفة ما إذا كانت التغييرات مطلوبة أم لا.
  • الاستماع أثناء الجري: يمكنك تسجيل ACTION_APPLICATION_RESTRICTIONS_CHANGED ديناميكيًا في أنشطة أو خدمات الجري، بعد التحقّق من القيود الجديدة. يتم إرسال هذا الغرض إلى المستمعين الذين تم تسجيلهم ديناميكيًا فقط، وليس إلى المستمعين المحدّدين في بيان التطبيق.
  • إلغاء التسجيل أثناء عدم التشغيل: في onPause()، يجب إلغاء التسجيل في بث ACTION_APPLICATION_RESTRICTIONS_CHANGED.

الأجهزة المخصّصة

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

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

للحصول على التعليمات، يُرجى الاطّلاع على الجهاز المخصّص.

إعداد الدخول الموحّد باستخدام Chrome Custom Tabs

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

  1. يحتاج المستخدمون غالبًا إلى تسجيل الدخول عدة مرات باستخدام بيانات الاعتماد نفسها. لا يكون حل WebView غالبًا تجربة تسجيل دخول موحّد.
  2. قد تكون هناك مخاطر متعلقة بالأمان، بما في ذلك التطبيقات الضارة التي تفحص ملفات تعريف الارتباط أو تُدخل بيانات اعتماد المستخدم باستخدام ®JavaScript للوصول إلى بيانات اعتماد المستخدم. حتى المطوّرين الموثوق بهم معرّضون للخطر إذا كانوا يعتمدون على حِزم تطوير برامج (SDK) تابعة لجهات خارجية يُحتمل أن تكون ضارة.

أحد الحلول لكلا المشكلتين هو مصادقة المستخدمين باستخدام علامات التبويب المخصَّصة للمتصفّح، بدلاً من WebView. وهذا يضمن أن تتم المصادقة:

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

الشروط

تمت إعادة اعتماد علامات التبويب المخصَّصة إلى المستوى 15 من واجهة برمجة التطبيقات (الإصدار Android 4.0.3). لاستخدام "علامات التبويب المخصصة"، يجب أن يكون لديك متصفح متوافق مثل Chrome. ينفِّذ Chrome 45 والإصدارات الأحدث هذه الميزة باسم Chrome Custom Tabs (علامات التبويب المخصّصة في Chrome).

كيف يمكنني تنفيذ خدمة الدخول المُوحَّد (SSO) مع علامات تبويب مخصّصة؟

وفّرت Google مكتبة عملاء OAuth مفتوحة المصدر تستخدم علامات تبويب مخصّصة، لتساهم بذلك في مجموعة عمل OpenID Connect التابعة لمؤسسة OpenID Foundation. لإعداد علامات التبويب المخصَّصة للدخول المُوحَّد (SSO) باستخدام مكتبة AppAuth، يمكنك الاطّلاع على المستندات ونموذج الرمز البرمجي على GitHub.

اختبار تطبيقك

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

استخدام اختبار وحدة التحكّم بسياسة الجهاز لاختبار تطبيق Android

ونوفّر تطبيق Test DPC لمساعدة مطوّري برامج Android على اختبار تطبيقاتهم في بيئة مؤسسية. من خلال اختبار وحدة التحكّم بسياسة الجهاز، يمكنك ضبط سياسات إدارة الخدمات الجوّالة للمؤسسات أو قيم الضبط المُدارة على جهاز، كما لو كانت إحدى المؤسسات تدير الجهاز باستخدام إدارة الخدمات الجوّالة للمؤسسات (EMM). لتثبيت اختبار وحدة التحكّم بسياسة الجهاز على أحد الأجهزة، اختَر إحدى الطرق التالية:

  • ثبِّت اختبار وحدة التحكّم بسياسة الجهاز (DPC) من GooglePlay.
  • يمكنك البناء من المصدر على GitHub.

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

توفير ملف شخصي للعمل

لاختبار تطبيقك في ملف شخصي للعمل، يجب أولاً توفير ملف شخصي للعمل على الجهاز باستخدام تطبيق Test DPC، وذلك على النحو التالي:

  1. ثبِّت اختبار وحدة التحكّم بسياسة الجهاز (DPC) على الجهاز.
  2. في مشغِّل تطبيقات Android، انقر على رمز تطبيق إعداد اختبار وحدة التحكُّم بسياسة الجهاز (DPC).
  3. اتّبِع التعليمات التي تظهر على الشاشة.
  4. ثبِّت تطبيقك على الجهاز واختبِر إعداداته في الملف الشخصي للعمل.

ينشئ Android ملفًا شخصيًا للعمل ويثبِّت نسخة من "اختبار وحدة التحكّم بسياسة الجهاز" في الملف الشخصي للعمل. يمكنك استخدام مثيل اختبار وحدة التحكّم بسياسة الجهاز (DPC) هذا الذي يحمل شارة العمل لضبط السياسات وعمليات الضبط المُدارة في الملف الشخصي للعمل. لمعرفة المزيد من المعلومات حول إعداد ملف شخصي للعمل من أجل التطوير، اقرأ دليل المطوِّر الملفات الشخصية للعمل.

توفير جهاز مُدار بالكامل

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

  1. ثبِّت اختبار وحدة التحكّم بسياسة الجهاز (DPC) على الجهاز.
  2. تأكَّد من عدم وجود مستخدمين آخرين أو ملف شخصي للعمل على الجهاز.
  3. تأكَّد من عدم وجود حسابات على الجهاز.
  4. شغِّل أمر Android Debug Bridge (adb) التالي في الوحدة الطرفية:
    adb shell dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
  5. بعد الانتهاء من إدارة حسابات مالك الجهاز، يمكنك اختبار تطبيقك على ذلك الجهاز. وعليك اختبار آلية عمل الإعدادات المُدارة والنية على هذا الجهاز على وجه التحديد.

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

الاختبار الشامل

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

  • توزيع التطبيق من خلال Play
  • الإعداد المُدار من جهة الخادم
  • التحكُّم في سياسة الملف الشخصي من جهة الخادم

يتعين عليك الوصول إلى وحدة تحكم إدارة الخدمات الجوّالة للمؤسسات (EMM) لإكمال الاختبار الشامل. وتتمثّل أسهل طريقة للحصول على أداة تجريبية في طلب وحدة تحكّم اختبار من إدارة الخدمات الجوّالة للمؤسسات (EMM). بعد حصولك على إذن الوصول، يُرجى إكمال المهام التالية:

  1. يمكنك إنشاء إصدار تجريبي من تطبيقك باستخدام ApplicationId جديد.
  2. المطالبة بنطاق Google مُدار وربطه بإدارة الخدمات الجوّالة للمؤسسات (EMM) لديك. إذا كنت تمتلك نطاق اختبار مرتبطًا بإحدى خدمات إدارة الخدمات الجوّالة للمؤسسات (EMM)، قد تحتاج إلى إلغاء ربطه لاختباره مع إدارة الخدمات الجوّالة للمؤسسات (EMM) التي تفضّلها. يُرجى الرجوع إلى إدارة الخدمات الجوّالة للمؤسسات (EMM) للتعرّف على الخطوات المحدّدة لإلغاء الربط.
  3. انشر تطبيقك على القناة الخاصة لنطاق Google المُدار.
  4. استخدِم وحدة تحكّم "إدارة الخدمات الجوّالة للمؤسسات" وتطبيق "إدارة الخدمات الجوّالة للمؤسسات" لتنفيذ ما يلي:
    1. إعداد أجهزة العمل.
    2. وزِّع تطبيقك.
    3. اضبط الضبط المُدار.
    4. تحديد سياسات الأجهزة

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