Чтобы обеспечить минимальную поддержку управляемых профилей, OEM-устройства должны содержать следующие важные элементы:
- Владелец профиля (как описано в разделе «Обеспечение совместимости с управляемыми профилями »).
- Владелец устройства
Полный список требований см. в разделе Реализация управления устройствами . Для тестирования функций управления устройствами владельцы устройств могут использовать приложение TestDPC, описанное ниже.
Настройка владельца устройства для тестирования
Используйте следующие инструкции для настройки среды тестирования владельца устройства.
- Сбросьте настройки целевого устройства до заводских настроек.
- Убедитесь, что на устройстве нет учетных записей пользователей (например, тех, которые используются для входа в онлайн-сервисы). Для проверки выберите «Настройки» > «Учетные записи» .
- Настройте тестовое приложение одним из следующих способов:
- Загрузите приложение TestDPC (доступно в Google Play).
- Создайте приложение TestDPC (доступно на github.com).
- Установите приложение TestDPC в качестве владельца устройства, используя следующую команду:
adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
- Пройдите настройку владельца устройства на устройстве (зашифруйте, выберите Wi-Fi).
Проверьте настройку владельца устройства
Чтобы убедиться, что владелец устройства настроен правильно, перейдите в «Настройки» > «Безопасность» > «Администраторы устройства» и убедитесь, что TestDPC присутствует в списке. Убедитесь, что его нельзя отключить (это означает, что он является владельцем устройства).
Отчеты об ошибках и журналы
Начиная с Android 7.0, клиент Device Policy Client (DPC) владельца устройства может получать отчеты об ошибках и просматривать журналы корпоративных процессов на управляемом устройстве.
Чтобы вызвать отчет об ошибке (то есть эквивалентные данные, собранные adb bugreport
содержащие данные dumpsys
, dumpstate и logcat), используйте DevicePolicyController.requestBugReport
. После сбора отчета об ошибке пользователю предлагается дать согласие на отправку данных отчета об ошибке. Результаты получены DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]
. Подробную информацию о содержимом отчета об ошибке см. в разделе Чтение отчетов об ошибках .
Кроме того, ЦОД владельца устройства также могут собирать журналы, связанные с действиями пользователя на управляемом устройстве. Ведение журнала корпоративных процессов требуется для всех устройств, которые сообщают об устройстве_администратора и включаются с помощью нового буфера безопасности журнала, доступного для чтения только системному серверу (то есть $ adb logcat -b security
не может читать буфер). Служба ActivityManager и компоненты Keyguard регистрируют следующие события в буфере безопасности:
- Запуск процессов подачи заявки
- Действия клавиатуры (например, неудачная и успешная разблокировка)
- команды
adb
выдаваемые устройству
Чтобы при необходимости сохранять журналы при перезагрузках (не при холодной загрузке) и делать эти журналы доступными для ЦОД владельца устройства, устройство должно иметь ядро с включенными pstore
и pmsg
, а также DRAM, включенную и обновляемую на всех этапах перезагрузки, чтобы избежать повреждения сохраняемых журналов. в памяти. Чтобы включить поддержку, используйте параметр config_supportPreRebootSecurityLogs
в frameworks/base/core/res/res/values/config.xml
.