Para garantizar una compatibilidad mínima con los perfiles administrados, los dispositivos OEM deben contener los siguientes elementos esenciales:
- Propietario del perfil (como se describe en Cómo garantizar la compatibilidad con los perfiles administrados)
- Propietario del dispositivo
Para obtener una lista completa de los requisitos, consulta Implementa la administración de dispositivos. Para probar las funciones de administración de dispositivos, los propietarios pueden usar la aplicación TestDPC que se describe a continuación.
Cómo configurar el propietario del dispositivo para realizar pruebas
Usa las siguientes instrucciones para configurar un entorno de prueba de propietario del dispositivo.
- Restablece la configuración de fábrica del dispositivo de destino.
- Asegúrate de que el dispositivo no contenga ninguna cuenta de usuario (por ejemplo, aquellas que se usan para acceder a servicios en línea). Para verificarlo, consulta Configuración > Cuentas.
- Configura la aplicación de prueba con uno de los siguientes métodos:
- Descarga la aplicación TestDPC (disponible en Google Play).
- Compila la aplicación TestDPC (disponible en github.com).
- Configura la app de TestDPC como el propietario del dispositivo con el siguiente comando:
adb shell dpm set-device-owner "com.afwsamples.testdpc/.DeviceAdminReceiver"
- Completa la configuración del propietario del dispositivo (encriptación, selección de Wi-Fi).
Verifica la configuración del propietario del dispositivo
Para verificar que el propietario del dispositivo se haya configurado correctamente, ve a Configuración > Seguridad > Administradores de dispositivos y confirma que TestDPC esté en la lista. Verifica que no se pueda inhabilitar (lo que significa que es el propietario del dispositivo).
Informes de errores y registros
A partir de Android 7.0, el cliente de políticas del dispositivo (DPC) del propietario del dispositivo puede obtener informes de errores y ver registros de procesos empresariales en un dispositivo administrado.
Para activar un informe de errores (es decir, los datos equivalentes que recopila adb bugreport
que contienen datos de dumpsys
, dumpstate y logcat), usa DevicePolicyController.requestBugReport
. Después de que se recopila el informe de errores, se le solicita al usuario que otorgue su consentimiento para enviar los datos del informe. DeviceAdminReceiver.onBugreport[Failed|Shared|SharingDeclined]
recibe los resultados. Para obtener detalles sobre el contenido de los informes de errores, consulta Cómo leer informes de errores.
Además, los DPC del propietario del dispositivo también pueden recopilar registros relacionados con las acciones que un usuario realizó en un dispositivo administrado. El registro de procesos empresariales es obligatorio para todos los dispositivos que informan device_admin y se habilita mediante un nuevo búfer de seguridad de registro que solo puede leer el servidor del sistema (es decir, $ adb logcat -b security
no puede leer el búfer). El servicio ActivityManager y los componentes de Keyguard registran los siguientes eventos en el búfer de seguridad:
- Inicio de los procesos de la aplicación
- Acciones del bloqueo de teclas (por ejemplo, desbloqueo fallido y exitoso)
- Comandos
adb
emitidos al dispositivo
De manera opcional, para conservar los registros en todos los reinicios (no en el inicio en frío) y que estos registros estén disponibles para los DPC del propietario del dispositivo, el dispositivo debe tener un kernel con pstore
y pmsg
habilitados, y la DRAM debe estar encendida y actualizada en todas las etapas del reinicio para evitar daños en los registros retenidos en la memoria. Para habilitar la compatibilidad, usa la configuración de config_supportPreRebootSecurityLogs
en frameworks/base/core/res/res/values/config.xml
.