Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O SDK do aplicativo do Microsoft Intune para Android permite incorporar políticas de proteção do aplicativo do Intune (também conhecidas como políticas de MAM) em seu aplicativo nativo Java/Kotlin para Android. Um aplicativo gerenciado do Intune é aquele que é integrado ao SDK do aplicativo do Intune. Os administradores do Intune podem facilmente implantar políticas de proteção de aplicativo em seu aplicativo gerenciado pelo Intune quando o Intune gerencia ativamente o aplicativo.
Observação
Este guia é dividido em várias etapas distintas. Comece revisando o Estágio 1: Planeje a integração.
Etapa 6: Configuração de Aplicativos
Objetivos do Estágio
- Saiba mais sobre as opções de configuração do aplicativo no Android.
- Decida quais configurações, se houver, seu aplicativo deve adicionar.
- Integre as APIs de configuração do aplicativo SDK do Aplicativo do Intune.
- Implemente a lógica de resolução de conflitos para suas configurações de aplicativo personalizadas.
Configuração de Aplicativos no Android
As configurações de aplicativo, também chamadas de configurações gerenciadas ou restrições de aplicativo, são configurações específicas do aplicativo e definidas pelo desenvolvedor que você pode adicionar ao seu aplicativo para dar aos administradores controle adicional sobre a experiência do aplicativo quando usado em uma configuração gerenciada. Por exemplo, se seu aplicativo for um navegador, você poderá optar por adicionar configurações que permitam aos administradores predefinir indicadores, bloquear determinadas páginas da Web ou desabilitar modos de navegação anônima. A configuração do aplicativo é uma ferramenta totalmente opcional, mas poderosa, para aprimorar a experiência de gerenciamento do seu aplicativo.
Confira Políticas de configuração de aplicativo para o Microsoft Intune para obter mais detalhes.
Configurações do aplicativo Built-In do Android
O Android tem a configuração do aplicativo integrada à plataforma, chamada de configurações gerenciadas. Essas configurações não dependem do SDK do Aplicativo do Intune e podem ser habilitadas em aplicativos que não integram o SDK do Aplicativo do Intune. Essas configurações só se aplicam quando o aplicativo é usado em um dispositivo gerenciado com um dos modos Android Enterprise do Google. Consulte Inscrever dispositivos Android para obter detalhes sobre como configurar esses modos Android Enterprise no Microsoft Intune. Os administradores podem configurar essas políticas de configuração de aplicativo para dispositivos Android Enterprise gerenciados no Microsoft Intune.
Seu aplicativo pode recuperar esses valores configurados pelo administrador por meio do RestrictionsManagerAndroid ou do SDK do Aplicativo do Intune.
Consulte Recuperando a configuração do aplicativo do SDK para obter mais informações.
Escopos delegados para aplicativos do Google Play Gerenciado
Os desenvolvedores de aplicativos podem usar escopos delegados para integrar permissões aprimoradas para seus aplicativos gerenciados do Google Play. Os escopos delegados fornecem os seguintes recursos para aplicativos gerenciados do Google Play:
- Permitir que outros aplicativos instalem e gerenciem certificados
- Permitir que o aplicativo acesse os logs de segurança do Android
- Permitir que o aplicativo acesse os logs de atividades da rede Android
Depois que esses recursos forem integrados a um aplicativo Google Play Gerenciado usando a API do Google, você poderá definir essas configurações no Intune usando perfis de configuração de dispositivo. Para obter mais informações, consulte Configurações do dispositivo Android Enterprise -> Aplicativos de propriedade > corporativa.
Para obter detalhes de implementação do aplicativo, consulte Documentação do desenvolvedor do Android – Escopos de delegação.
SDK do aplicativo do Intune Configurações de aplicativos
O SDK do Aplicativo do Intune dá suporte a outro mecanismo para fornecer configurações de aplicativo, separado das configurações gerenciadas do Android Enterprise. Essas configurações são exclusivas do Microsoft Intune e se aplicam apenas a aplicativos que integraram o SDK do Aplicativo do Intune. No entanto, essas configurações não estão limitadas a dispositivos com gerenciamento do Android Enterprise. Os administradores podem configurar essas políticas de configuração de aplicativo para aplicativos gerenciados no Microsoft Intune.
Observação
A configuração do aplicativo também pode ser configurada usando a API do Graph. Para obter informações, consulte a documentação da API do Graph para a Configuração Direcionada do MAM.
Seu aplicativo deve recuperar esses valores configurados pelo administrador por meio do SDK do Aplicativo do Intune. Consulte Recuperando a configuração do aplicativo do SDK para obter mais informações.
Quais configurações devo adicionar ao meu aplicativo?
Este guia não pode responder a esta pergunta para você. Somente você e sua equipe sabem quais recursos tornam seu aplicativo mais valioso quando sob gerenciamento.
As perguntas a seguir podem ajudar a orientar as discussões e revelar as configurações que você pode querer adicionar ao seu aplicativo:
- Quais recursos seu aplicativo oferece hoje?
- Há valor em desabilitar qualquer um desses recursos enquanto estiver sob gerenciamento?
- Existe valor em alterar algum desses recursos enquanto estiver sob gerenciamento?
- Como seu aplicativo é usado sob gerenciamento hoje?
- Há alguma opção que os administradores possam pré-configurar em nome de seus usuários?
- Há alguma ação realizada pelos administradores ou usuários finais, exclusiva para cenários gerenciados?
- Seus usuários gerenciados solicitaram recursos que podem não ser apropriados para toda a população de usuários?
Para cada configuração que você decidir adicionar ao seu aplicativo, você precisará definir três itens:
- Chave - esta cadeia de caracteres identifica exclusivamente esta configuração de outras configurações. Ele deve ser legível, pois será configurado pelos administradores.
- Tipo - que tipo de dados é essa configuração? É uma cadeia de caracteres, booleano, inteiro, array, etc.?
- Estratégia de resolução de conflitos : como seu aplicativo responderá se os administradores configurarem vários valores para a mesma chave? No exemplo do navegador mencionado anteriormente, uma lista de favoritos pode combinar todos os valores, enquanto uma configuração para desabilitar o modo anônimo pode optar por desabilitar se algum dos valores conflitantes for "verdadeiro".
Meu aplicativo deve dar suporte à configuração para Dispositivos Gerenciados ou Aplicativos Gerenciados?
As configurações que se aplicam a dispositivos gerenciados e as configurações que se aplicam a aplicativos gerenciados não são mutuamente exclusivas. Você deve considerar as necessidades dos usuários ao decidir qual tipo (ou ambos) de configuração dar suporte.
| Área de configuração | Configuração para dispositivos gerenciados | Configuração para Aplicativos Gerenciados |
|---|---|---|
| Aplicabilidade do dispositivo | Aplica-se apenas a dispositivos sob gerenciamento de dispositivos Android Enterprise. | Aplica-se a todos os dispositivos, desde que o aplicativo integre o SDK do Aplicativo do Intune e o Portal da Empresa esteja instalado. |
| Plataforma | Somente Android, limitado a dispositivos com serviços do Google | O SDK do Aplicativo do iOS dá suporte às mesmas configurações. Como desenvolvedor, você pode compartilhar essas chaves para ter uma experiência consistente entre plataformas. |
| Aplicabilidade | Qualquer EMM | Exclusivo para o Microsoft Intune |
| Descoberta de esquema | O esquema está disponível publicamente após o upload do aplicativo no Play | Descoberta de esquema sob controle do desenvolvedor |
Ambos os tipos de configuração de aplicativo dependem de pares de chave-valor. O Microsoft Intune não inspeciona o conteúdo dessas configurações e simplesmente passa os valores configurados pelo administrador para seu aplicativo.
A API de configuração de aplicativo SDK do Aplicativo do Intune inclui valores configurados pelo administrador de ambos os canais. Se o aplicativo der suporte a ambos os tipos de configuração de aplicativo, use a API conforme descrito a seguir.
Recuperando a configuração do aplicativo do SDK
Os aplicativos podem receber configurações de ambos os canais usando as classes MAMAppConfigManager e 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);
Se não houver nenhuma conta registrada no MAM, mas seu aplicativo ainda quiser recuperar os valores de configuração do Android Enterprise (que não serão direcionados a uma conta específica), você poderá passar uma null cadeia de caracteres ou uma cadeia de caracteres vazia para o OID.
Observação
Se o aplicativo usar o SDK do aplicativo do Intune para recuperar configurações gerenciadas do Android Enterprise e o Portal da Empresa não estiver instalado, essas configurações serão entregues por meio de um MAMUserNotification com uma identidade vazia.
Seu aplicativo também pode solicitar os dados brutos como uma lista de conjuntos de pares de chave-valor, em vez de consultar por chaves específicas.
List<Map<String, String>> getFullData()
Seu aplicativo também pode se registrar para a REFRESH_APP_CONFIG notificação que informa ao aplicativo que novos dados de configuração de aplicativo estão disponíveis.
Se o aplicativo armazenar em cache os dados de configuração do aplicativo, ele deverá se registrar para essa notificação e invalidar todos os dados armazenados em cache no manipulador.
Consulte Registrar-se para notificações do SDK para obter mais detalhes.
Resolver conflitos
Se várias políticas de configuração de aplicativo forem direcionadas ao mesmo aplicativo e conta, poderá haver vários valores conflitantes disponíveis para a mesma chave.
Observação
Um valor definido na configuração do aplicativo MAM substituirá um valor com a mesma chave definida na configuração do Android Enterprise.
Se um administrador configurar valores conflitantes para a mesma chave, o Intune não terá como resolver esse conflito automaticamente e disponibilizará todos os valores para seu aplicativo. Esse tipo de conflito pode acontecer se o administrador direcionar diferentes conjuntos de configurações de aplicativo com a mesma chave para vários grupos contendo a mesma conta.
Seu aplicativo pode solicitar todos os valores de uma determinada chave de um objeto MAMAppConfig, para que você possa resolver conflitos com sua própria lógica de negócios:
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, você pode solicitar que um valor seja escolhido com uma das estratégias internas de resolução de conflitos:
Boolean getBooleanForKey(String key, BooleanQueryType queryType)
Long getIntegerForKey(String key, NumberQueryType queryType)
Double getDoubleForKey(String key, NumberQueryType queryType)
String getStringForKey(String key, StringQueryType queryType)
As estratégias integradas de resolução de conflitos disponíveis incluem:
-
BooleanQueryType.Any,BooleanQueryType.And,BooleanQueryType.Or -
NumberQueryType.Any,NumberQueryType.Min,NumberQueryType.Max -
StringQueryType.Any,StringQueryType.Min,StringQueryType.Max, em que min e max são de uma lista em ordem alfabética.
Critérios de Saída
O Intune é responsável por fornecer os valores da política de configuração de aplicativo para seu aplicativo. Posteriormente, seu aplicativo é responsável por usar esses valores para alterar o comportamento ou a interface do usuário dentro do aplicativo. Testes completos de ponta a ponta devem abranger ambos os componentes.
Para validar se o Intune está fornecendo corretamente a política de configuração de aplicativo:
- Configure uma política de configuração de aplicativo, que seja direcionada ao seu aplicativo e implantada em sua conta de teste.
- Se o aplicativo for compatível com a configuração de aplicativos para dispositivos gerenciados, consulte as políticas de configuração de aplicativos para dispositivos Android Enterprise gerenciados.
- Se o aplicativo der suporte à configuração de aplicativo para aplicativos gerenciados, consulte políticas de configuração de aplicativo para aplicativos gerenciados.
- Se o aplicativo der suporte a ambos os tipos de configuração de aplicativo, crie os dois tipos de política para teste.
- Faça logon no aplicativo com sua conta de teste.
- Para dispositivos gerenciados, consulte Políticas de configuração de aplicativo Android Enterprise e Registrar dispositivos Android.
- Para aplicativos gerenciados:
- Instale o aplicativo e o Portal da Empresa do Intune.
- Faça logon no aplicativo com sua conta de teste.
- Navegue pelo seu aplicativo para exercitar cada codepath que chama
MAMAppConfigManager'sgetAppConfigForOIDougetFullData.- Registrar os resultados das chamadas para
getAppConfigForOIDé uma maneira simples de validar quais configurações são entregues. No entanto, como os administradores podem inserir qualquer dado para as definições de configuração do aplicativo, tenha cuidado para não registrar nenhum dado privado do usuário.
- Registrar os resultados das chamadas para
- Consulte Validar a política de configuração de aplicativo aplicada.
Como as configurações de aplicativo são específicas do aplicativo, somente você sabe como validar como seu aplicativo deve alterar o comportamento ou a interface do usuário para cada definição de configuração do aplicativo.
Ao testar, considere o seguinte:
- Garantir que todos os cenários sejam cobertos criando uma política de configuração de aplicativo de teste diferente com cada valor ao qual seu aplicativo dá suporte.
- Validar a lógica de resolução de conflitos do seu aplicativo criando várias políticas de configuração de aplicativo de teste com valores diferentes para cada configuração.
- Se o seu aplicativo tiver se registrado para a
REFRESH_APP_CONFIGnotificação, atualizando a política de configuração do aplicativo enquanto seu aplicativo estiver em uso ativo, aguardando a atualização da política e confirmando que esse codepath é exercido corretamente. - Se o aplicativo der suporte a ambos os tipos de configuração de aplicativo, testar os dois cenários para garantir que sua implementação forneça a identidade correta para .
getAppConfigForOID
Próximas etapas
Depois de concluir todos os critérios de saída acima, seu aplicativo agora está integrado com êxito como com a política de configuração de aplicativo.
A seção subsequente, Estágio 7: Recursos de Participação no Aplicativo, pode ou não ser necessária, dependendo do suporte desejado da política de proteção do aplicativo do aplicativo. Se você não tiver certeza se algum desses recursos se aplica ao seu aplicativo, consulte as principais decisões para integração ao SDK.