page.title=Actualizaciones de Android for Work page.metaDescription=Nuevas API y funciones de Android for Work en Android N. page.keywords="android for work", "android N", "enterprise", "QR code" @jd:body
En este documento, se describen las nuevas funciones de Android for Work que se proporcionan en Android N.
Android for Work ahora es compatible con la utilización de códigos QR para aprovisionar dispositivos de responsabilidad corporativa. Gracias al asistente de configuración, ahora puedes escanear un código QR para aprovisionar el dispositivo.
Los propietarios de perfiles pueden solicitar que los usuarios especifiquen una comprobación de seguridad para las aplicaciones que se ejecutan en el perfil de trabajo. Dicha comprobación se muestra en el sistema cuando el usuario intenta abrir cualquier aplicación de trabajo. Si el usuario completa con éxito la comprobación de seguridad, el sistema desbloquea el perfil de trabajo y lo descifra si es necesario.
Si el propietario de un perfil envía una intent {@link
android.app.admin.DevicePolicyManager#ACTION_SET_NEW_PASSWORD}, el
sistema le pide al usuario que configure una comprobación de seguridad. El propietario del perfil también puede
enviar una intent ACTION_SET_NEW_PARENT_PROFILE_PASSWORD
para que el usuario establezca un bloqueo de dispositivo.
Los propietarios de perfiles pueden elegir establecer las políticas de contraseña para la comprobación del perfil de trabajo de modo que sean
diferentes de aquellas para las contraseñas de otros dispositivos. Por ejemplo, la
longitud mínima para la respuesta de comprobación del dispositivo puede ser diferente de la
longitud necesaria para otras contraseñas. Los propietarios de perfiles establecen las políticas de
comprobación mediante los métodos {@link android.app.admin.DevicePolicyManager}
comunes, como por ejemplo, {@link
android.app.admin.DevicePolicyManager#setPasswordQuality
setPasswordQuality()} y {@link
android.app.admin.DevicePolicyManager#setPasswordMinimumLength
setPasswordMinimumLength()}. El propietario del perfil también puede establecer el bloqueo del dispositivo mediante
la utilización de la instancia de{@link android.app.admin.DevicePolicyManager} devuelta
por el nuevo método DevicePolicyManager.getParentProfileInstance()
. Además, los propietarios de perfiles pueden personalizar la pantalla de credenciales para
la comprobación de trabajo mediante la utilización de los nuevos métodos de la clase{@link android.app.admin.DevicePolicyManager}
setOrganizationColor()
y
setOrganizationName()
.
Para obtener detalles sobre los nuevos métodos y constantes, consulta la página de referencia de
DevicePolicyManager
en la Referencia sobre N Preview SDK.
Los propietarios de perfiles y dispositivos pueden suspender temporariamente el acceso a los paquetes
mediante una llamada al nuevo método DevicePolicyManager.setPackagesSuspended()
. Los propietarios pueden utilizar el mismo método para volver a habilitar esos paquetes.
Mientras un paquete está suspendido, este no puede comenzar actividades, se suprimen las notificaciones al paquete y se oculta la entrada de la aplicación en la pantalla de información general. Los paquetes suspendidos no aparecen en la pantalla de información general y no pueden mostrar diálogos (incluidos avisos y snackbars). Además, no pueden reproducir audio ni hacer vibrar el dispositivo.
Los lanzadores deben aplicar una IU distintiva para las aplicaciones suspendidas a fin de mostrar que las
aplicaciones no están actualmente disponibles; por ejemplo, el ícono de la aplicación puede aparecer en color
gris. Los lanzadores pueden averiguar si una aplicación está suspendida llamando al nuevo método
DevicePolicyManager.getPackageSuspended()
.
En dispositivos de perfil doble, los usuarios pueden activar o desactivar el modo de trabajo. Mientras este último está desactivado, el perfil administrado se encuentra inactivo temporariamente. Se inhabilitan todas las aplicaciones del perfil de trabajo, la sincronización en segundo plano y las notificaciones, incluida la aplicación del propietario del perfil. Mientras el perfil de trabajo está deshabilitado, en el sistema se muestra un ícono de estado persistente para recordarles a los usuarios que no pueden iniciar aplicaciones de trabajo. El launcher del sistema indica que no se puede acceder a aplicaciones ni widgets de trabajo.
Los propietarios de dispositivos y perfiles pueden solicitar que las aplicaciones de trabajo siempre se conecten a la red a través de una VPN especificada. Si los propietarios establecen este requisito, el dispositivo inicia automáticamente esa VPN en el inicio.
Los propietarios pueden requerir el uso de una VPN llamando al nuevo método
DevicePolicyManager.setAlwaysOnVpnPackage()
. Para averiguar
si el propietario ha establecido un requisito de VPN, llama al nuevo método
DevicePolicyManager.GetAlwaysOnVpnPackage()
.
Debido a que los servicios de VPN pueden enlazarse directamente a través del sistema sin interacción con aplicaciones, los clientes de VPN deben administrar nuevos puntos de entrada para VPN siempre visibles. Como antes, puedes encontrar servicios activos mediante la utilización de un filtro de intent que coincida con la acción {@link android.net.VpnService android.net.VpnService}.
Para configurar manualmente un cliente de VPN que esté siempre visible y que implemente {@link android.net.VpnService}, los usuarios deben ir a Settings > More > pantalla VPN.
Los propietarios de perfiles pueden permitir la búsqueda local y la búsqueda en directorio de los contactos de trabajo a partir del usuario principal. Por ejemplo, un usuario puede acceder a contactos personales y laborales del directorio desde el teléfono personal o la aplicación de contactos (si así lo permite el administrador del perfil).
Los desarrolladores que aprovechan el proveedor de contactos pueden utilizar la API de contactos empresariales para acceder a las entradas del directorio del perfil de trabajo desde el usuario principal si así lo permiten las siguientes políticas:
ContactsContract.Contacts.ENTERPRISE_CONTENT_FILTER_URI
ContactsContract.Phone.ENTERPRISE_CONTENT_FILTER_URI
ContactsContract.Email.ENTERPRISE_CONTENT_FILTER_URI
ContactsContract.Callable.ENTERPRISE_CONTENT_FILTER_URI
ContactsContract.Directory.ENTERPRISE_CONTENT_URI
ContactsContract.Directory.isEntepriseDirectoryId()
Los propietarios de perfiles pueden controlar la visibilidad de los contactos laborales en el usuario principal por medio de los nuevos métodos a continuación:
DevicePolicyManager.setCrossProfileContactsSearchDisabled()
DevicePolicyManager.getCrossProfileContactsSearchDisabled()
Los propietarios pueden reiniciar sus dispositivos de forma remota. En algunos casos, no se puede acceder al botón de encendido de los dispositivos implementados en
lugares públicos dentro de recintos. Si se debe
reiniciar un dispositivo, los administradores pueden hacerlo utilizando el nuevo método
DevicePolicyManager.reboot()
.
Los propietarios de dispositivos pueden inhabilitar el roaming de datos mediante la nueva restricción de usuario de {@link
android.os.UserManager} denominada DISALLOW_DATA_ROAMING
.
Los propietarios de dispositivos pueden identificar actividades sospechosas mediante un rastreo remoto de la actividad del
dispositivo, incluidos inicios de aplicaciones, actividad adb y desbloqueos de pantalla. Los registros de
procesos no requieren del consentimiento del usuario. Para recuperar registros, los propietarios de dispositivos habilitan
los registros de dispositivos mediante DevicePolicyManager.setSecurityLoggingEnabled()
.
Entre los cambios en la API, se incluyen los siguientes:
android.app.admin.SecurityLog
y sus
métodos
void DevicePolicyManager.setSecurityLoggingEnabled()
boolean DevicePolicyManager.isSecurityLoggingEnabled()
List<SecurityEvent>
DevicePolicyManager.retrieveSecurityLogs()
List<SecurityEvent>
DevicePolicyManager.retrievePreRebootSecurityLogs()
void DeviceAdminReceiver.onSecurityLogsAvailable()
Los propietarios de dispositivos pueden activar y recuperar de forma remota un informe de errores que contenga un archivo de descarga sobre el estado del dispositivo, lo que permite llevar a cabo una investigación forense de un incidente conocido o un dispositivo afectado. Debido a la naturaleza detallada del informe de errores, se requiere el consentimiento del usuario.
Android N incluye los siguientes agregados de API para ofrecer compatibilidad con esta función. Para obtener detalles, consulte la Referencia sobre N Preview SDK .
DevicePolicyManager.requestBugreport()
DeviceAdminReceiver.onBugreportFailed()
DeviceAdminReceiver.onBugreportShared()
DeviceAdminReceiver.onBugreportSharingDeclined()
DeviceAdminReceiver.BUGREPORT_FAILURE_FAILED_COMPLETING
DeviceAdminReceiver.BUGREPORT_FAILURE_FILE_NO_LONGER_AVAILABLE
Los propietarios de perfiles y dispositivos ahora pueden quitar certificados de cliente que se
instalaron a través de {@link android.app.admin.DevicePolicyManager#installKeyPair
installKeyPair()} llamando al nuevo método
DevicePolicyManager.removeKeyPair()
.
Si un propietario de perfil o dispositivo otorga a una aplicación de terceros la capacidad de administrar certificados, dicha aplicación puede acceder por sí sola a los certificados que instala sin intervención alguna por parte del propietario.
La API existente para administrar certificados se extiende para incluir lo siguiente:
DevicePolicyManager.installKeyPair()
Las políticas que afectan la experiencia del usuario o restringen las configuraciones del usuario se divulgan en su totalidad al usuario, y los propietarios de perfiles y dispositivos pueden atribuir la política al departamento de TI de la empresa. Además de un mensaje “Action not allowed” consistente en Settings, los administradores de TI pueden configurar un mensaje de soporte específico para la organización en la configuración del dispositivo con los nuevos métodos{@link android.app.admin.DevicePolicyManager} a continuación:
DevicePolicyManager.setShortSupportMessage()
DevicePolicyManager.setLongSupportMessage()
El propietario del dispositivo o perfil puede habilitar otra aplicación para que administre las restricciones de
aplicaciones mediante el nuevo método
DevicePolicyManager.setApplicationRestrictionsManagingPackage()
. La aplicación nominada puede controlar si se otorgó este permiso
llamando a
DevicePolicyManager.isCallerApplicationRestrictionsManagingPackage()
.
Una aplicación nominada para administrar restricciones de aplicaciones puede llamar a {@link android.app.admin.DevicePolicyManager#setApplicationRestrictions setApplicationRestrictions()} y {@link android.app.admin.DevicePolicyManager#getApplicationRestrictions getApplicationRestrictions()} para cualquier paquete dentro de ese usuario o perfil.
Los usuarios pueden inhabilitar los permisos de ubicación para las aplicaciones de trabajo mientras continúan accediendo a información sobre ubicación en sus aplicaciones personales. Mediante un interruptor independiente de acceso a información de ubicación en Location Settings, los usuarios pueden denegar las actualizaciones de ubicación o las consultas de última ubicación para las aplicaciones que se ejecutan en el perfil de trabajo.
Gracias al interruptor de desactivación de servicios de ubicación de nivel superior, se inhabilita el acceso a este tipo de información para el perfil principal y el perfil administrado.
En una aplicación se pueden personalizar los flujos de provisión del propietario del perfil y del propietario del dispositivo con logos y colores corporativos.
DevicePolicyManager.EXTRA_PROVISIONING_MAIN_COLOR
DevicePolicyManager.EXTRA_PROVISIONING_LOGO_URI
Los propietarios de perfiles y dispositivos pueden configurar múltiples certificados de CA para una configuración
de Wi-Fi determinada. Cuando las redes de Wi-Fi corporativas tienen CA independientes para
diferentes puntos de acceso con el mismo SSID, los administradores de TI pueden incluir todas las
CA relevantes en la configuración Wi-Fi utilizando el nuevo método
setCaCertificates()
.
Las API que se agregaron son las siguientes:
WifiEnterpriseConfig.setCaCertificates()
WifiEnterpriseConfig.getCaCertificates()
Los propietarios de dispositivos pueden proporcionar información de propietario para que aparezca en la pantalla bloqueada. Esta información prevalece sobre el mensaje de la pantalla bloqueada del usuario (si se configuró uno). Los nuevos métodos {@link android.app.admin.DevicePolicyManager} son los siguientes:
setDeviceOwnerLockScreenInfo()
getDeviceOwnerLockScreenInfo()
Los propietarios de perfiles pueden especificar una aplicación de teléfono de trabajo que utilice un {@link android.telecom.ConnectionService} específico del trabajo para el backend de llamadas (cuentas de llamadas). El teléfono de trabajo lleva únicamente un registro de llamadas de trabajo y depende solo de contactos laborales. Los usuarios tienen una experiencia de IU de llamada entrante consistente independientemente de la aplicación de marcación. Las llamadas laborales que ingresan en las cuentas de llamadas de trabajo se distinguen de las llamadas personales que ingresan en las cuentas de llamadas personales.
El teléfono debe controlar el nuevo marcador
android.telecom.Call.PROPERTY_WORK_CALL
para determinar si una llamada es
de tipo laboral. Si se trata de una llamada laboral, el teléfono debe indicarlo
, por ejemplo, mediante el agregado de una insignia de trabajo.
Mediante una nueva restricción de usuario (DISALLOW_SET_WALLPAPER
), se evita que el
usuario modifique el fondo de pantalla. Los propietarios de dispositivos o perfiles aún pueden
modificar el fondo de pantalla. Sin embargo, solo pueden hacerlo para el
usuario o perfil que controlan. Por ejemplo, el propietario de un perfil no puede modificar el
fondo de pantalla del usuario primario,
pero sí pueden hacerlo el propietario de un dispositivo o el propietario de un perfil en el perfil principal. El propietario de un dispositivo o perfil que desea modificar el
fondo de pantalla debe controlar si el usuario o perfil que administra posee un
fondo de pantalla ({@link android.app.WallpaperManager#isWallpaperSupported
isWallpaperSupported()}) y si puede modificarlo (con el
nuevo método WallpaperManager.isWallpaperSettingAllowed()
).
Mediante una nueva restricción de usuario (DISALLOW_SET_USER_ICON
), se evita que el
usuario modifique el ícono de usuario. El propietario del dispositivo o del perfil del usuario
aún puede modificar el ícono. Sin embargo, un propietario de perfil solo puede modificar el ícono
de usuario del perfil que controla.
El propietario de un perfil o dispositivo puede usar la nueva interfaz
HardwarePropertiesManager
para recuperar información
sobre el estado del dispositivo, como por ejemplo, las temperaturas de CPU o GPU y el uso de la CPU. La nueva interfaz
de control es especialmente útil para controlar dispositivos sin supervisión
que se ejecutan en una ubicación remota.