أجهزة مخصَّصة

يتم إعداد Glass عادةً لاستخدامه كجهاز مخصّص بعدد قليل من التطبيقات التي تشكّل حلاً للمؤسسات. يوضح الدليل التالي كيفية إعداد Glass كجهاز مُخصَّص.

جارٍ توفير الخدمة

تعمل ميزة إعداد الأجهزة الجوّالة للمؤسّسات دفعةً واحدة على تثبيت الإصدار Enterprise Enterprise Edition 2 وضبطها، وهي تطبيقات تم تنزيلها من البيانات الوصفية المقدَّمة في رمز الاستجابة السريعة. يمكن لهذا التطبيق الاستفادة من واجهة برمجة التطبيقات DevicePolicyManager، وهي الطريقة المفضّلة لإدارة إعدادات الجهاز.

استبدال مشغّل التطبيقات

لإعداد جهاز مخصّص، عليك استبدال تطبيق مشغّل التطبيقات. ما يضمن لك تشغيل التطبيق المُخصَّص تلقائيًا بعد إعادة تشغيل الجهاز. يوضّح المحتوى التالي المهام المرتبطة بإعداد التطبيق وضبطه كمشغّل التطبيقات:

  • فلتر الأهداف من النشاط
  • ضبط مشغّل تطبيقات جديد
  • فلتر أهداف النشاط

    عليك إضافة الفئات التالية إلى النشاط الرئيسي في بيان التطبيق:

    <intent-filter>
      <action android:name="android.intent.action.MAIN"/>
      <category android:name="android.intent.category.LAUNCHER"/>
    
      <category android:name="android.intent.category.HOME"/>
      <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
    

    ضبط مشغّل تطبيقات جديد

    لضبط مشغّل تطبيقات جديد، يُرجى استدعاء addPersistentpreferredActivity() من تطبيق المشرف. لا يعمل هذا الإعداد إلا إذا تم توفير الجهاز من قبل. بالنسبة إلى الأجهزة غير المتوفرة، اختَر مشغّل تطبيقات جديدًا من واجهة المستخدم على الجهاز.

    إضافة النشاط المفضَّل المستمر

    تسمح لك هذه الطريقة بضبط componentName محدّد بصفته مشغِّل الجهاز، بدون التفاعل مع الجهاز.

    Kotlin

    val filter = IntentFilter(Intent.ACTION_MAIN)
    filter.addCategory(Intent.CATEGORY_HOME)
    filter.addCategory(Intent.CATEGORY_DEFAULT)
    
    val componentName = ComponentName(PACKAGE_NAME, CLASS_NAME)
    val devicePolicyManager: DevicePolicyManager =
        context.getSystemService(Context.DEVICE_POLICY_SERVICE) as DevicePolicyManager
    val adminName = getComponentName(context)
    devicePolicyManager.addPersistentPreferredActivity(adminName, filter, componentName)
    

    Java

    final IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN);
    filter.addCategory(Intent.CATEGORY_HOME);
    filter.addCategory(Intent.CATEGORY_DEFAULT);
    
    final ComponentName componentName = new ComponentName(PACKAGE_NAME, CLASS_NAME);
    DevicePolicyManager devicePolicyManager =
        (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE);
    final adminName = getComponentName(context);
    devicePolicyManager.addPersistentPreferredActivity(adminName, filter, componentName);
    

    استخدام واجهة مستخدم على الجهاز

    استخدِم إحدى الطرق التالية لعرض مربّع حوار لاختيار مشغِّل التطبيقات على الشاشة:

    استخدام إيماءة التمرير سريعًا للأعلى في الإعدادات

    مرِّر سريعًا للخلف على الشاشة الرئيسية لعرض شاشة ملخص الإعدادات. انقر بعد ذلك للدخول إلى شاشة الإعدادات. مرِّر سريعًا للأعلى لعرض مربّع الحوار.

    استخدام النية في التطبيق

    Kotlin

    val intent = Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
    

    Java

    final Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
    
    استخدام الأمر adb

    adb shell am start -a android.intent.action.MAIN -c android.intent.category.HOME

    مرِّر سريعًا إلى الأمام والخلف على لوحة اللمس لاختيار التطبيق المفضّل لديك وانقر عليه. استخدِم الطريقة نفسها لاختيار الزر "&دائمًا&quot؛

    وضع قفل المهام

    يسمح لك وضع قفل المهام بإنشاء قائمة من الحِزم المسموح بها للتشغيل على الجهاز.

    ضبط الطرود المسموح بها

    ويوضّح لك المقتطف التالي كيفية ضبط قائمة الحِزم:

    Kotlin

    private val KIOSK_PACKAGE = "com.example.kiosk"
    private val PLAYER_PACKAGE = "com.example.player"
    private val APP_PACKAGES = arrayOf(KIOSK_PACKAGE, PLAYER_PACKAGE)
    
    val devicePolicyManager: DevicePolicyManager =
      context.getSystemService(Context.DEVICE_POLICY_SERVICE) as DevicePolicyManager
    val adminName = getComponentName(context)
    devicePolicyManager.setLockTaskPackages(adminName, APP_PACKAGES)
    

    Java

    private static final String KIOSK_PACKAGE = "com.example.kiosk";
    private static final String PLAYER_PACKAGE = "com.example.player";
    private static final String[] APP_PACKAGES = {KIOSK_PACKAGE, PLAYER_PACKAGE};
    
    final DevicePolicyManager devicePolicyManager =
        (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE);
    final ComponentName adminName = getComponentName(context);
    devicePolicyManager.setLockTaskPackages(adminName, APP_PACKAGES);
    

    بدء وضع قفل المهام

    يمكن بدء وضع مهمة القفل بواسطة نشاط التطبيق. ويوضّح المقتطف التالي كيفية إجراء ذلك:

    Kotlin

    override fun onResume() {
        super.onResume()
        activity.startLockTask()
    }
    

    Java

    @Override
    public void onResume() {
      super.onResume();
      getActivity().startLockTask();
    }