Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El SDK de aplicaciones de Microsoft Intune para Android le permite incorporar directivas de protección de aplicaciones de Intune (también conocidas como directivas MAM) en su aplicación nativa de Android Java/Kotlin. Una aplicación administrada por Intune es aquella que está integrada con el SDK de la aplicación de Intune. Los administradores de Intune pueden implementar fácilmente directivas de protección de aplicaciones en la aplicación administrada por Intune cuando Intune administra activamente la aplicación.
Nota:
Esta guía se divide en varias etapas distintas. Comience por revisar la Etapa 1: Planifique la integración.
Fase 6: App Configuration
Objetivos de la etapa
- Obtener información sobre las opciones de configuración de aplicaciones en Android.
- Decida qué configuraciones, si las hay, debe agregar la aplicación.
- Integrar las API de configuración de aplicaciones del SDK de aplicaciones de Intune
- Implemente lógica de resolución de conflictos para las configuraciones de aplicaciones personalizadas.
App Configuration en Android
Las configuraciones de aplicaciones, también denominadas configuraciones administradas o restricciones de aplicaciones, son configuraciones específicas de la aplicación y definidas por el desarrollador que se pueden agregar a la aplicación para proporcionar a los administradores un mayor control sobre la experiencia de la aplicación cuando se usan en una configuración administrada. Por ejemplo, si la aplicación es un explorador, puedes elegir agregar configuraciones que permitan a los administradores preestablecer marcadores, bloquear determinadas páginas web o deshabilitar los modos de incógnito. La configuración de aplicaciones es una herramienta totalmente opcional, pero potente, para mejorar la experiencia de administración de su aplicación.
Consulte Directivas de configuración de aplicaciones para Microsoft Intune para obtener más detalles.
Configuraciones de la aplicación Built-In de Android
Android tiene una configuración de aplicaciones integrada en la plataforma, denominada configuraciones administradas. Estas configuraciones no dependen del SDK de aplicaciones de Intune y se pueden habilitar en aplicaciones que no integran el SDK de aplicaciones de Intune. Estas configuraciones solo se aplican cuando tu aplicación se usa en un dispositivo que se administra con uno de los modos de Android Enterprise de Google. Consulte Inscribir dispositivos Android para obtener más información sobre cómo configurar estos modos empresariales de Android en Microsoft Intune. Los administradores pueden configurar estas directivas de configuración de aplicaciones para dispositivos Android Enterprise administrados en Microsoft Intune.
La aplicación puede recuperar estos valores configurados por el administrador a través de RestrictionsManagerAndroid o a través del SDK de la aplicación de Intune.
Consulte Recuperación de la configuración de aplicaciones desde el SDK para obtener más información.
Ámbitos delegados para aplicaciones administradas de Google Play
Los desarrolladores de aplicaciones pueden usar ámbitos delegados para integrar permisos mejorados para sus aplicaciones administradas de Google Play. Los ámbitos delegados proporcionan las siguientes funcionalidades para las aplicaciones administradas de Google Play:
- Permitir que otras aplicaciones instalen y administren certificados
- Permitir que la aplicación acceda a los registros de seguridad de Android
- Permitir que la aplicación acceda a los registros de actividad de la red Android
Una vez que estas funcionalidades se hayan integrado en una aplicación de Google Play administrada mediante la API de Google, puede configurar estas opciones en Intune mediante perfiles de configuración de dispositivos. Para obtener más información, consulte Configuración> de dispositivos Android Enterprise: aplicaciones propiedad > de la empresa.
Para obtener más información sobre la implementación de la aplicación, consulte la documentación para desarrolladores de Android: ámbitos de delegación.
SDK de la aplicación de Intune Configuraciones de aplicaciones
El SDK de la aplicación de Intune admite otro mecanismo para entregar configuraciones de aplicaciones, independiente de las configuraciones administradas de Android Enterprise. Estas configuraciones son exclusivas de Microsoft Intune y solo se aplican a las aplicaciones que han integrado el SDK de la aplicación de Intune. Sin embargo, estas configuraciones no se limitan a los dispositivos con administración de Android Enterprise. Los administradores pueden configurar estas directivas de configuración de aplicaciones para las aplicaciones administradas en Microsoft Intune.
Nota:
La configuración de la aplicación también se puede configurar mediante la API de Graph API. Para obtener más información, consulte la documentación de la API de Graph API para MAM Targeted Config.
La aplicación debe recuperar estos valores configurados por el administrador a través del SDK de aplicaciones de Intune. Consulte Recuperación de la configuración de aplicaciones desde el SDK para obtener más información.
¿Qué configuraciones debo agregar a mi aplicación?
Esta guía no puede responder a esta pregunta por usted. Solo usted y su equipo saben qué características hacen que su aplicación sea más valiosa cuando está bajo administración.
Las siguientes preguntas pueden ayudar a guiar las discusiones y revelar configuraciones que quizás quiera agregar a su aplicación:
- ¿Qué características ofrece su aplicación actualmente?
- ¿Tiene algún valor deshabilitar alguna de estas características mientras está bajo administración?
- ¿Tiene algún valor cambiar alguna de estas características mientras está bajo administración?
- ¿Cómo se usa su aplicación bajo administración hoy?
- ¿Hay alguna opción que los administradores puedan configurar previamente en nombre de sus usuarios?
- ¿Hay alguna acción que realicen los administradores o los usuarios finales que sea exclusiva de los escenarios administrados?
- ¿Los usuarios administrados han solicitado características que podrían no ser apropiadas para toda la población de usuarios?
Para cada configuración que decida agregar a la aplicación, deberá definir tres elementos:
- Clave : esta cadena identifica de forma única esta configuración con respecto a otras opciones de configuración. Debe ser legible por humanos, ya que lo configurarán los administradores.
- Tipo : ¿qué tipo de datos es esta configuración? ¿Es una cadena, booleana, entero, matriz, etc.?
- Estrategia de resolución de conflictos : ¿cómo responderá la aplicación si los administradores configuran varios valores para la misma clave? En el ejemplo del navegador mencionado anteriormente, una lista de marcadores puede combinar todos los valores, mientras que una configuración para deshabilitar incógnito puede optar por deshabilitar si alguno de los valores en conflicto es "verdadero".
¿Mi aplicación debería admitir la configuración de dispositivos administrados o aplicaciones administradas?
Las configuraciones que se aplican a dispositivos administrados y las configuraciones que se aplican a aplicaciones administradas no son mutuamente excluyentes. Debe tener en cuenta las necesidades de los usuarios al decidir qué tipo de configuración admitir (o ambos).
| Área de configuración | Configuración de dispositivos administrados | Configuración de aplicaciones administradas |
|---|---|---|
| Aplicabilidad del dispositivo | Solo se aplica a dispositivos bajo administración de dispositivos Android Enterprise. | Se aplica a todos los dispositivos, siempre que la aplicación integre el SDK de la aplicación de Intune y el Portal de empresa esté instalado. |
| Plataforma | Solo Android, limitado a dispositivos con servicios de Google | El SDK de aplicaciones de iOS admite las mismas configuraciones. Como desarrollador, puede compartir estas claves para obtener una experiencia multiplataforma coherente. |
| Aplicabilidad | Cualquier EMM | Exclusivo de Microsoft Intune |
| Detectabilidad de esquema | El esquema está disponible públicamente después de la carga de la aplicación en Play | Detectabilidad de esquemas bajo el control del desarrollador |
Ambos tipos de configuración de aplicaciones se basan en pares clave-valor. Microsoft Intune no inspecciona el contenido de estas configuraciones y simplemente pasa los valores configurados por el administrador a la aplicación.
La API de configuración de aplicaciones del SDK de aplicaciones de Intune incluye valores configurados por el administrador de ambos canales. Si la aplicación admite ambos tipos de configuración de aplicaciones, use la API como se describe a continuación.
Recuperación de la configuración de aplicaciones del SDK
Las aplicaciones pueden recibir configuraciones de ambos canales mediante las clases MAMAppConfigManager y MAMAppConfig .
MAMAppConfigManager configManager = MAMComponents.get(MAMAppConfigManager.class);
String oid = <OID of user account>;
MAMAppConfig appConfig = configManager.getAppConfigForOID(oid);
String fooValue = appConfig.getStringForKey("foo", MAMAppConfig.StringQueryType.Any);
Si no hay ninguna cuenta registrada en MAM, pero la aplicación desea recuperar los valores de configuración de Android Enterprise (que no se destinarán a una cuenta específica), puede pasar una cadena vacía o una null para el OID.
Nota:
Si la aplicación usa el SDK de la aplicación de Intune para recuperar las configuraciones administradas de Android Enterprise y el Portal de empresa no está instalado, estas configuraciones se entregarán a través de una con una MAMUserNotification identidad vacía.
La aplicación también puede solicitar los datos sin procesar como una lista de conjuntos de pares clave-valor, en lugar de consultar por claves específicas.
List<Map<String, String>> getFullData()
La aplicación también puede registrarse para recibir la notificación que informa a la REFRESH_APP_CONFIG aplicación de que hay disponibles nuevos datos de configuración de la aplicación.
Si la aplicación almacena en caché los datos de configuración de la aplicación, debe registrarse para esta notificación e invalidar cualquier dato almacenado en caché en el controlador.
Consulte Registro para notificaciones desde el SDK para obtener más detalles.
Resolver conflictos
Si varias directivas de configuración de aplicaciones están dirigidas a la misma aplicación y cuenta, puede haber varios valores en conflicto disponibles para la misma clave.
Nota:
Un valor establecido en la configuración de la aplicación MAM invalidará un valor con la misma clave establecida en la configuración de Android Enterprise.
Si un administrador configura valores en conflicto para la misma clave, Intune no tiene ninguna manera de resolver este conflicto automáticamente y pondrá todos los valores a disposición de la aplicación. Este tipo de conflicto podría producirse si el administrador dirige diferentes conjuntos de configuraciones de aplicaciones con la misma clave a varios grupos que contienen la misma cuenta.
La aplicación puede solicitar todos los valores de una clave determinada desde un objeto MAMAppConfig , de modo que pueda resolver conflictos con su propia lógica de negocios:
List<Boolean> getAllBooleansForKey(String key)
List<Long> getAllIntegersForKey(final String key)
List<Double> getAllDoublesForKey(final String key)
List<String> getAllStringsForKey(final String key)
Como alternativa, puede solicitar que se elija un valor con una de las estrategias integradas de resolución de conflictos:
Boolean getBooleanForKey(String key, BooleanQueryType queryType)
Long getIntegerForKey(String key, NumberQueryType queryType)
Double getDoubleForKey(String key, NumberQueryType queryType)
String getStringForKey(String key, StringQueryType queryType)
Las estrategias integradas disponibles para la resolución de conflictos incluyen:
-
BooleanQueryType.Any,BooleanQueryType.And,BooleanQueryType.Or -
NumberQueryType.Any,NumberQueryType.Min,NumberQueryType.Max -
StringQueryType.Any,StringQueryType.Min,StringQueryType.Max, donde min y max se obtienen de una lista ordenada alfabéticamente.
Criterios de salida
Intune es responsable de entregar los valores de la directiva de configuración de aplicaciones a la aplicación; después, la aplicación es responsable de usar esos valores para cambiar el comportamiento o la interfaz de usuario dentro de la aplicación. Las pruebas exhaustivas de extremo a extremo deben cubrir ambos componentes.
Para validar que Intune entrega correctamente la directiva de configuración de aplicaciones:
- Configure una directiva de configuración de aplicaciones, que esté destinada a su aplicación y se implemente en su cuenta de prueba.
- Si la aplicación admite la configuración de aplicaciones para dispositivos administrados, consulte directivas de configuración de aplicaciones para dispositivos Android Enterprise administrados.
- Si la aplicación admite la configuración de aplicaciones para aplicaciones administradas, consulte directivas de configuración de aplicaciones para aplicaciones administradas.
- Si la aplicación admite ambos tipos de configuración de aplicaciones, cree ambos tipos de directiva para realizar pruebas.
- Inicie sesión en la aplicación con su cuenta de prueba.
- Para los dispositivos administrados, consulte Directivas de configuración de aplicaciones empresariales Android e Inscribir dispositivos Android.
- Para aplicaciones administradas:
- Instale la aplicación y el Portal de empresa de Intune.
- Inicie sesión en la aplicación con su cuenta de prueba.
- Navegue por la aplicación para ejercitar cada ruta de código que llama a
MAMAppConfigManager'sgetAppConfigForOIDogetFullData.- Registrar los resultados de las llamadas es
getAppConfigForOIDuna forma sencilla de validar qué configuración se entrega. Sin embargo, como los administradores pueden introducir cualquier dato para las opciones de configuración de la aplicación, tenga cuidado de no registrar ningún dato privado de usuario.
- Registrar los resultados de las llamadas es
- Consulte Validación de la directiva de configuración de aplicaciones aplicada.
Dado que las configuraciones de aplicaciones son específicas de la aplicación, solo usted sabe cómo validar cómo debe cambiar el comportamiento o la interfaz de usuario de la aplicación para cada opción de configuración de la aplicación.
Al realizar pruebas, ten en cuenta lo siguiente:
- Para asegurarse de que todos los escenarios están cubiertos, cree una directiva de configuración de la aplicación de prueba diferente con cada valor que admita la aplicación.
- Validar la lógica de resolución de conflictos de la aplicación mediante la creación de varias directivas de configuración de aplicaciones de prueba con valores diferentes para cada configuración.
- Si la aplicación se ha registrado para la
REFRESH_APP_CONFIGnotificación, la actualización de la directiva de configuración de la aplicación mientras la aplicación está en uso activo, esperando que la directiva se actualice y la confirmación de que esta ruta de código se ejerce correctamente. - Si la aplicación admite ambos tipos de configuración de aplicaciones, pruebe ambos escenarios para asegurarse de que la implementación proporcione la identidad correcta a
getAppConfigForOID.
Pasos siguientes
Después de completar todos los criterios de salida anteriores, la aplicación se ha integrado correctamente al igual que con la directiva de configuración de aplicaciones.
La sección siguiente, Fase 7: Características de participación en la aplicación, puede ser necesaria o no, en función del soporte de directiva de protección de aplicaciones deseado de la aplicación. Si no está seguro de si alguna de estas características se aplica a la aplicación, vuelva a visitar Decisiones clave para la integración de SDK.