Android Management API (AMAPI) SDK 可让特定应用直接与 Android Device Policy (ADP) 通信。它支持:
- 本地执行命令
- 将使用自定义 DPC 管理的设备迁移到 AMAPI
- Device Trust from Android Enterprise
- 新的设备注册流程,还支持添加受管理的 Google 账号
- 使用 AMAPI 管理自定义应用
- 管理应用角色。
- 读取设备 EID。
如需将 AMAPI SDK 与您的应用集成,必须执行以下步骤:
前提条件
- 验证应用的
minSdkVersion是否至少设置为 API 级别 21。 - 将最新版 AMAPI SDK 的依赖项添加到您的应用。您可以在 AMAPI SDK 的版本说明 页面中找到最新可用库的版本,以及 如何将其添加到您的应用。
添加 queries 元素
如果您的应用以 SDK 30 或更高版本为目标平台,则需要在 AndroidManifest.xml 中添加 queries 元素,以指定它将与 ADP 交互。
<queries>
<package android:name="com.google.android.apps.work.clouddpc" />
</queries>
如需了解详情,请参阅 Android 上的软件包可见性过滤。
实现 NotificationReceiverService
某些功能需要创建
NotificationReceiverService,而某些功能
则可以选择使用它。如需使用它,请定义一个扩展
NotificationReceiverService 的类,将其作为 service 添加到 AndroidManifest.xml,并确保它已导出。
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-data 的 android:name 的特定字符串(如需查看示例,请参阅管理应用角色)。如需使此标记有效,您的应用必须恰好有一个已启用且具有 meta-data 的服务,该服务的 android:name 是此特定字符串,android:value 是空字符串。您可以为同一服务添加多个 meta-data。