Glass обычно настраивается для использования в качестве выделенного устройства с небольшим количеством приложений, составляющих корпоративное решение. В следующем руководстве показано, как настроить Glass в качестве выделенного устройства.
Предоставление
Автоматическая подготовка в Glass Enterprise Edition 2 устанавливает и настраивает приложение администратора, которое загружается из метаданных, представленных в QR-коде. Это приложение может использовать API-интерфейс 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
в качестве средства запуска устройства, не взаимодействуя с устройством.
Котлин
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)
Ява
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);
Использовать пользовательский интерфейс на устройстве
Используйте один из следующих способов, чтобы отобразить на экране диалоговое окно выбора программы запуска:
Использование сенсорного жеста прокрутки вверх в настройках
Проведите назад по главному экрану, чтобы отобразить экран сводки настроек. Затем коснитесь, чтобы открыть экран настроек. Проведите вверх, чтобы открыть диалоговое окно.
Использование намерения в приложении
Котлин
val intent = Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); startActivity(intent);
Ява
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
Проведите вперед и назад по сенсорной панели, чтобы выбрать нужное приложение, и нажмите для подтверждения. Используйте тот же метод, чтобы выбрать кнопку «Всегда».
Заблокировать режим задачи
Режим блокировки задач позволяет создать список пакетов, которые разрешено запускать на устройстве.
Установить разрешенные пакеты
В следующем фрагменте показано, как установить список пакетов:
Котлин
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)
Ява
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);
Запустить режим задачи блокировки
Режим блокировки задач может быть запущен активностью приложения. В следующем фрагменте показано, как это можно сделать:
Котлин
override fun onResume() { super.onResume() activity.startLockTask() }
Ява
@Override public void onResume() { super.onResume(); getActivity().startLockTask(); }