與 AMAPI SDK 整合

Android Management API (AMAPI) SDK 可讓特定應用程式直接與 Android Device Policy (ADP) 通訊。包括支援:

如要將 AMAPI SDK 整合至應用程式,請按照下列步驟操作:

  1. 新增 AMAPI SDK 程式庫
  2. 如果目標 SDK >= 30,請新增 queries 元素

必要條件

  • 確認應用程式的 minSdkVersion 至少設為 API 級別 21。
  • 將最新版 AMAPI SDK 的依附元件新增至應用程式。如要瞭解最新可用程式庫的版本,以及如何將程式庫新增至應用程式,請參閱 AMAPI SDK 的發行說明頁面。

新增查詢元素

如果應用程式的目標是 SDK 30 以上版本,則 AndroidManifest.xml 中需要 queries 元素,指定與 ADP 互動。

<queries>
    <package android:name="com.google.android.apps.work.clouddpc" />
</queries>

詳情請參閱「在 Android 上篩選套件瀏覽權限」。

實作 NotificationReceiverService

部分功能需要建立NotificationReceiverService,部分功能則可選擇使用。如要使用這項功能,請定義擴充 NotificationReceiverService 的類別,將其新增為 AndroidManifest.xmlservice,並確保已匯出。


import com.google.android.managementapi.notification.NotificationReceiverService;

...

public final class MyAppNotificationReceiverService extends NotificationReceiverService {

  @Override
  protected void setupInjection() {
    // This method can be optionally used to inject dependencies at the
    // beginning of the service lifecycle.
  }
}

您必須為 ADP 應用程式提供 NotificationReceiverService 類別的 ComponentName。您可以採取兩種做法:各項功能的說明文件會指定要使用哪種方法。

明確 API

在這種情況下,ComponentName 會透過適當的 API 傳遞至 ADP 應用程式。如需詳細資料,請參閱相關功能說明文件。 在 AndroidManifest.xml 中加入:

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" />

自動探索

採用這種做法時,您必須標記服務,系統才能自動探索服務。在 AndroidManifest.xml 中加入:

<service
 android:name = ".MyAppNotificationReceiverService"
 android:exported = "true" >
    <meta-data android:name="Insert name here" android:value=""/>
</service>

針對採用這種做法的每項功能,系統都會記錄 meta-dataandroid:name 專用字串 (請參閱「管理應用程式角色」一文中的範例)。如要讓這項標記生效,應用程式必須啟用剛好一項服務,且該服務的 meta-data 為這個特定字串,而 android:name 為空字串。android:value您可以在同一個服務中新增多個 meta-data