نقل بيانات الأجهزة الحالية إلى AMAPI

يمكن نقل الأجهزة التي تديرها وحدة التحكّم بسياسة الجهاز المخصّصة إلى جهاز Android. سياسة (ADP) والاستفادة من واجهة برمجة التطبيقات لإدارة Android.

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

  • تتم إدارة الجهاز حاليًا عن طريق إدارة الخدمات الجوّالة للمؤسسات (EMM) من خلال وحدة تحكّم بسياسة الجهاز (DPC) مخصّصة.
  • تم دمج وحدة التحكّم بسياسة الجهاز المخصّصة مع AMAPI SDK.
  • تم تسجيل الجهاز باستخدام Google Play EMM API.
  • ينتمي الجهاز إلى حسابات Google Play للأعمال.
  • يعمل الجهاز بنظام التشغيل Android 9 أو إصدار أحدث.
  • في حال الملفات الشخصية للعمل على الأجهزة المملوكة للشركة، يجب تشغيل الجهاز الإصدار 11 من نظام Android أو إصدار أحدث

الدمج مع حزمة تطوير البرامج (SDK) AMAPI في وحدة التحكّم بسياسة الجهاز (DPC)

تتطلب عملية الترحيل أن يقوم تطبيق وحدة التحكم بسياسة الجهاز المخصص بدمج حزمة تطوير البرامج (SDK) لـ AMAPI. يمكنك العثور على مزيد من المعلومات حول هذه المكتبة وكيفية إضافتها. في تطبيقك في دليل دمج حزمة تطوير البرامج (SDK) لواجهة برمجة التطبيقات (AMAPI).

خطوات نقل بيانات جهاز

  1. إعداد سياسة ينبغي أن يستخدمها الجهاز بعد نقل البيانات إلى AMAPI. لتقديم أفضل تجربة للمستخدم، يجب أن تكون هذه السياسة مماثلة للسياسة. التي سبق أن فرضتها وحدة التحكّم بسياسة الجهاز (DPC) على الجهاز.
  2. إنشاء رمز مميّز للنقل للجهاز من خلال طلب enterprises.migrationTokens.create
  3. إرسال value للرمز المميّز لنقل البيانات هذا إلى وحدة التحكّم بسياسة الجهاز (DPC) المخصَّصة
  4. تأكّد من تثبيت تطبيق Android Device Policy على الجهاز باستخدام واجهة برمجة التطبيقات لإدارة الخدمات الجوّالة للمؤسسات (EMM)
  5. استخدام DpcMigrationClientFactory لإنشاء DpcMigrationClient
  6. في DpcMigrationClient، يمكنك الاتصال migrateDeviceManagementToAndroidManagementApi. وبهذا تكتمل عملية نقل البيانات.
  7. ستتغير deviceState إلى ACTIVE، وسيصلك STATUS_REPORT من خلال قناة نشر/اشتراك.

بعد اكتمال عملية النقل، سيفقد تطبيق الاتصال حساب مالك الجهاز أو الملف الشخصي. امتيازات المالك، حيث يتم نقلها إلى تطبيق Android Device Policy.

ملاحظة: يجب أن يكون الجهاز متصلاً بالإنترنت لبدء عملية نقل البيانات. تم تصميم هذه العملية لتكون مرنة في حالات انقطاع الاتصال بالشبكات أثناء وعملية الترحيل، بحيث يمكن أن تكون العمليات الرئيسية التي تتطلب اتصالاً بالشبكة تتم قبل النقل الفعلي لمالك الجهاز أو حقوق مالك الملف الشخصي من وحدة التحكّم بسياسة الجهاز (DPC) إلى تطبيق Android Device Policy.

الرمز المميّز لنقل البيانات

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

دمج وحدة التحكّم بسياسة الجهاز المخصّصة

تحتاج أولاً إلى إنشاء DpcMigrationRequest، بنجاح الرمز، وقائمة شبكات Wi-Fi التي تم إعدادها منصة إنشاء:

// Create a DpcMigrationRequest
DpcMigrationRequest request =
        DpcMigrationRequest.builder()
            .setMigrationToken(token)
            .build();

يمكنك بعد ذلك استخدام الحصول على DpcMigrationClient وبدء عملية نقل البيانات مع migrateDeviceManagementToAndroidManagementApi:

// Create a DpcMigrationClient
DpcMigrationClient dpcMigrationClient = DpcMigrationClientFactory.create(context);
try {
  // Use helper function to retrieve Admin component name
  var adminComponentName = getAdminComponent(context);

  ListenableFuture<DpcMigrationAttempt> futureAttempt =
          dpcMigrationClient.migrateDeviceManagementToAndroidManagementApi(
              new ComponentName(context, DpcMigrationNotificationReceiver.class),
              adminComponentName,
              request);
  // handle futureAttempt
} catch (RuntimeException e) {
  // send failure feedback: "Error: " + e
}

تتبُّع تقدُّم عملية نقل البيانات

يتم تتبُّع عملية نقل البيانات على الجهاز من خلال DpcMigrationAttempt

يمكنك استخدام الأداة التي تم إرجاعها بواسطة migrateDeviceManagementToAndroidManagementApi أو استخدِم getMigrationAttempt وlistMigrationAttempts طريقة للحصول على وإدراج محاولات نقل البيانات.

// Passing an empty name, we retrieve the last attempt 
var request = GetDpcMigrationAttemptRequest.builder().build();

var attempt = client.getMigrationAttempt(request);

يمكنك إعداد DpcMigrationListener اختياريًا باستخدام NotificationReceiverService للاستماع إلى آخر الأخبار حول حالة DpcMigrationAttempt

// DpcMigrationNotificationReceiver for callback handling
public class DpcMigrationNotificationReceiver extends NotificationReceiverService
    implements DpcMigrationListener {

  @Override
  protected DpcMigrationListener getDpcMigrationListener() {
    // getDpcMigrationListener"
    return this;
  }

  @Override
  public void onMigrationStateChanged(DpcMigrationAttempt migrationAttempt) {
    // send success feedback
  }
}

التعامل مع شبكات Wi-Fi

في حال توفُّر شبكات Wi-Fi تديرها وحدة التحكّم بسياسة الجهاز (DPC) المخصَّصة، يمكنك اتّباع سياسة AMAPI ONC. أن يتطابق مع إعدادات هذه الشبكات حتى تتمكن AMAPI من البدء في إدارتها بسلاسة. يختلف تفاعل نقل بيانات وحدة التحكّم بسياسة الجهاز (DPC) مع إدارة شبكة Wi-Fi. اعتمادًا على وضع الإدارة.

الأجهزة المُدارة بالكامل والملفات الشخصية للعمل على الأجهزة المملوكة للشركة

أثناء نقل البيانات، يفترض تطبيق Android Device Policy أنّ أي شبكة Wi-Fi تمت ضبطها في السياسة تتضمّن SSID ونوع الأمان نفسيهما تتطابق شبكة Wi-Fi التي تم إعدادها على الجهاز مع شبكة Wi-Fi التي تم ضبطها. شبكة Wi-Fi. وبالتالي، لا يتم تعديل شبكات Wi-Fi التي تم ضبطها من خلال وحدة التحكّم بسياسة الجهاز المخصّصة. بعد النقل إلى أن يحدث تغيير في سياسة ONC بما يتوافق مع الشبكة. ومع ذلك، في حال إلغاء تثبيت وحدة التحكّم بسياسة الجهاز (DPC) المخصَّصة بعد نقل البيانات، لن يتم إصدار وتتم تلقائيًا إزالة شبكات Wi-Fi التي تم ضبطها من خلال وحدة التحكّم بسياسة الجهاز المخصّصة. يستمر تطبيق Android Device Policy في فرض السياسة، وفي حال كانت أيٌّ من هذه الشبكات في السياسة، تُضاف الشبكات التي تم ضبطها في السياسة المعتاد.

ملف العمل على جهاز شخصي

لأسباب فنية، يجب أن تكون شبكات Wi-Fi التي تم ضبطها من خلال وحدة التحكّم بسياسة الجهاز (DPC) المخصَّصة تمت إزالتها بواسطة وحدة التحكّم بسياسة الجهاز المخصّصة لتطبيق Android Device Policy لبدء إدارة هذه شبكات Wi-Fi: وتتولّى حزمة AMAPI SDK هذا الإجراء وتزيل شبكات Wi-Fi هذه قبل نقل الملكية من وحدة التحكّم بسياسة الجهاز المخصّصة إلى تطبيق Android Device Policy ولكنه يتطلب من وحدة التحكّم بسياسة الجهاز المخصّصة تمرير معلومات عن هذه الشبكات في DpcMigrationRequest بعد نقل البيانات، ستتم إضافة المهيأة في السياسة بشكل طبيعي، لذا نقترح أن يجب أيضًا ضبط الشبكات التي تضيفها وحدة التحكّم بسياسة الجهاز (DPC) المخصّصة في السياسة.

هناك بعض النقاط التي يجب أن تكون على دراية بها:

  • إذا كانت الشبكة النشطة عبارة عن شبكة Wi-Fi تم ضبطها من خلال وحدة تحكم في المنتج (DPC) مخصصة، فسيقوم الجهاز يمكن أن يكون بلا اتصال بالإنترنت لفترة وجيزة أثناء نقل البيانات.
  • يجب فقط نقل شبكات Wi-Fi التي تم ضبطها من خلال وحدة التحكّم بسياسة الجهاز (DPC) المخصّصة. DpcMigrationRequest، وإلا تعذَّرت عملية نقل البيانات في حال لا يمكن إزالة هذه الشبكة باستخدام حزمة تطوير البرامج (SDK) AMAPI (على سبيل المثال، شبكة Wi-Fi التي أضافها المستخدم).
  • يجب تمرير شبكات Wi-Fi عبر DpcMigrationRequest فقط عندما يكون وحدة التحكّم بسياسة الجهاز المخصّصة مالك الملف الشخصي على جهاز تملكه شخصيًا، وإلا سيتعذّر نقل البيانات.
  • لأسباب تقنية، يعد Android 12 حالة استثنائية حيث لا يتم تمريرها في DpcMigrationRequest يتم تجاهلها ويتم تجاهل جميع شبكات Wi-Fi تتم تلقائيًا إزالة الشبكات التي ضبطتها وحدة التحكّم بسياسة الجهاز المخصّصة. علاوة على ذلك، شرط أن يكون لدى وحدة التحكّم بسياسة الجهاز المخصّصة ACCESS_WIFI_STATE إذن في Android 12 للملفات الشخصية للعمل على الأجهزة الشخصية، وإلا يخفق الترحيل.

المحاذير

في ما يلي بعض المحاذير المتعلقة بهذه الميزة.

رقم التعريف الخاص بالمؤسسة

بالنسبة إلى الملفات الشخصية للعمل على نظام التشغيل Android 12 والإصدارات الأحدث، يمكن استخدام رقم التعريف الخاص بالمؤسسة. والذي يمكن الوصول إليه من DevicePolicyManager.getEnrollmentSpecificId ولا تتغير في وقت النقل. ومع ذلك، إذا كان ملف العمل الذي تتم إدارته بواسطة تطبيق Android Device Policy مرة أخرى على الجهاز (على سبيل المثال، بعد حذف الجهاز السابق أو إعادة ضبط الجهاز على الإعدادات الأصلية)، سيتم تغيير المعرّف الخاص بالمؤسسة في هذه المرحلة.

الملفات الشخصية للعمل على الأجهزة المُدارة بالكامل

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