Glass 通常會設定為專用裝置,並搭配少數應用程式,組成企業解決方案。以下指南說明如何將 Glass 設為專用裝置。
佈建中
低接觸式佈建 在 Glass Enterprise Edition 2 上安裝及設定管理員應用程式,該應用程式是從 QR code 中提供的中繼資料下載而來。這個應用程式可運用 DevicePolicyManager API,這是管理裝置設定的首選方法。
更換啟動器
如要設定專用裝置,必須替換啟動器應用程式。這樣一來,裝置重新啟動後,系統就會自動啟動專用應用程式。以下內容說明準備應用程式並將其設為啟動器的相關工作:
- 活動意圖篩選器
- 設定新的啟動器
活動意圖篩選器
您需要在應用程式資訊清單的主要活動中新增下列類別:
<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()。這項操作只適用於已佈建的裝置。如果裝置未佈建,請在裝置的 UI 中選取新的啟動器。
新增持續性偏好活動
這個方法可讓您將特定 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
在觸控板上前後滑動,選取偏好的應用程式,然後輕觸確認。使用相同方法選取「一律」按鈕。
鎖定任務模式
鎖定工作模式可讓您建立允許在裝置上執行的套件清單。
設定允許的套件
下列程式碼片段說明如何設定套件清單:
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(); }