为确保对托管配置文件的最低限度支持,OEM 设备必须包含以下基本元素:
- 配置文件所有者(如确保与托管配置文件的兼容性中所述)
- 设备所有者
有关要求的完整列表,请参阅实施设备管理。要测试设备管理功能,设备所有者可以使用下面描述的 TestDPC 应用程序。
设置设备所有者以进行测试
使用以下说明设置设备所有者测试环境。
- 出厂重置目标设备。
- 确保设备不包含任何用户帐户(例如用于登录在线服务的帐户)。要验证,请检查Settings > Accounts 。
- 使用以下方法之一设置测试应用程序:
- 下载 TestDPC 应用程序(可从 Google Play 获取)。
- 构建 TestDPC 应用程序(可从 github.com 获得)。
- 使用以下命令将 TestDPC 应用设置为设备所有者:
adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
- 在设备上完成设备所有者设置(加密、选择 Wi-Fi 等)。
验证设备所有者设置
要验证设备所有者是否已正确设置,请转到“设置”>“安全”>“设备管理员”并确认 TestDPC 在列表中。验证它不能被禁用(这表示它是设备所有者)。
自动配置测试
要自动测试企业配置流程,请使用 Android Enterprise Test Harness。有关详细信息,请参阅测试设备配置。
错误报告和日志
从 Android 7.0 开始,设备所有者设备策略客户端 (DPC) 可以获得错误报告并查看托管设备上企业进程的日志。
要触发错误报告(即,包含dumpsys
、dumpstate 和 logcat 数据的adb bugreport
收集的等效数据),请使用DevicePolicyController.requestBugReport
。收集错误报告后,系统会提示用户同意发送错误报告数据。结果由DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]
接收。有关错误报告内容的详细信息,请参阅阅读错误报告。
此外,设备所有者 DPC 还可以收集与用户在托管设备上执行的操作相关的日志。所有报告 device_admin 的设备都需要企业进程日志记录,并由一个只能由系统服务器读取的新日志安全缓冲区启用(即$ adb logcat -b security
无法读取缓冲区)。 ActivityManager 服务和 Keyguard 组件将以下事件记录到安全缓冲区:
- 申请流程开始
- 锁屏动作(例如,解锁失败和成功)
- 向设备发出的
adb
命令
要选择性地在重新启动(而不是冷启动)期间保留日志并使这些日志可供设备所有者 DPC 使用,设备必须具有启用pstore
和pmsg
的内核,并且在重新启动的所有阶段都为 DRAM 供电和刷新,以避免损坏保留的日志在记忆中。要启用支持,请使用frameworks/base/core/res/res/values/config.xml
中的config_supportPreRebootSecurityLogs
设置。