A API Google Play EMM oferece suporte aos seguintes métodos de distribuição para apps públicos e particulares:
- Os usuários podem instalar manualmente apps pela loja do Google Play gerenciado.
- Os administradores de TI podem instalar remotamente apps nos dispositivos dos usuários.
Instalar apps manualmente pela Google Play Store gerenciada
Você pode definir quais apps estão disponíveis para instalação no
policy
da Device
e configurá-los chamando Devices.update
. Ao
provisionar um novo dispositivo, defina a política antes de adicionar a conta do Google Play
gerenciada ao dispositivo. Caso contrário, a política não será aplicada por um
curto período após a adição da conta ao dispositivo.
O comportamento da Play Store gerenciada é definido pelo valor de
policy.productAvailabilityPolicy
:
all
: todos os apps públicos da Play Store estão disponíveis.whitelist
: somente os apps listados empolicy.productPolicy
estão disponíveis.
Em ambos os casos, todos os apps em policy.productPolicy
são adicionados por padrão ao
layout de armazenamento da empresa. O layout da loja da empresa é a página inicial
da Play Store gerenciada quando whitelist
está selecionado e pode ser acessado
em uma guia "Apps de trabalho" quando all
é selecionado. Você pode permitir que seu cliente
personalize o layout da loja da empresa incorporando o iframe do Google Play
gerenciado. Consulte Organizar apps com o iframe do Google Play gerenciado.
Instalar remotamente aplicativos nos dispositivos do usuário
Para instalar remotamente um app (também chamado de instalação push) no dispositivo de um usuário, defina
policy.productPolicy.autoInstallPolicy
no policy
do Device
. Ao
provisionar um novo dispositivo, defina a política antes de adicionar a conta do Google Play
gerenciada ao dispositivo. Caso contrário, a política não será aplicada por um
curto período após a adição da conta ao dispositivo.
O autoInstallMode
pode ser definido como:
doNotAutoInstall
: o app não é instalado automaticamente.autoInstallOnce
: o app é instalado automaticamente uma vez. Se o usuário desinstalar, ele não será instalado de novo.forceAutoInstall
: o app será instalado automaticamente. Se o usuário desinstalar, ele será instalado de novo. Em dispositivos gerenciados, o DPC precisa bloquear a desinstalação usandoDevicePolicyManager.setUninstallBlocked
.
Em caso de falha (perda de conectividade, falta de armazenamento etc.), as instalações são repetidas automaticamente até serem concluídas. Uma estratégia de nova tentativa com espera exponencial é aplicada para evitar o desperdício de bateria e dados no caso de falhas irrecuperáveis.
Prioridade de instalação
Para escolher a ordem de instalações, defina autoInstallPriority
. A
prioridade precisa ser um número inteiro sem assinatura, e o valor padrão é 0. Os apps serão
instalados em ordem ou prioridade crescente, o que significa que os apps com o valor de
prioridade menor serão instalados primeiro.
Restrições de instalação
Você pode definir restrições de instalação para cada app definindo um
autoInstallConstraint
, permitindo controlar o estado necessário do
dispositivo durante a instalação:
- se o dispositivo deve estar conectado a uma rede Wi-Fi,
- se o dispositivo deve estar carregando,
- e se o dispositivo deve estar ocioso (não é usado ativamente pelo usuário).
Se as restrições não forem atendidas imediatamente, as instalações afetadas serão colocadas na fila até que as restrições sejam atendidas.
Em uma autoInstallConstraint
, a regra AND é aplicada entre os campos. Por
exemplo, com o autoInstallConstraint
abaixo, o dispositivo precisa estar
carregando e conectado a uma rede ilimitada (por exemplo, Wi-Fi) para que o app seja
instalado:
"autoInstallConstraint": [
"chargingStateConstraint" : "chargingRequired",
"networkTypeConstraint" : "unmeteredNetwork"
]
Instalação automática de apps em dispositivos recém-provisionados
A API Google Play EMM envia uma notificação NewDeviceEvent
quando um dispositivo é
provisionado pela primeira vez. Para instalar apps por push automaticamente em dispositivos recém-provisionados, detecte notificações NewDeviceEvent
. A partir de cada NewDeviceEvent
,
recupere o userId
e o deviceId
e, em seguida, chame Devices.update
para definir
a política para esse dispositivo.
Para saber como receber notificações de EMM, consulte Configurar notificações de EMM.
Distribuir apps para testes fechados
Os testes fechados permitem que os desenvolvedores de apps recebam feedback de usuários confiáveis sobre as primeiras versões do app. Os desenvolvedores podem configurar testes fechados no Google Play Console. Use a API Play EMM para permitir que os administradores de TI distribuam versões fechadas (também chamadas de faixas) de apps para usuários específicos. Os clientes empresariais podem usar esse recurso não apenas para testar apps de terceiros, mas também para testar apps particulares desenvolvidos internamente.
Apps qualificados
Antes de um desenvolvedor adicionar uma empresa à lista de testadores fechados de um app, o app precisa atender aos seguintes critérios:
- Uma versão de produção do app é publicada no Google Play.
- No Google Play Console, o Google Play gerenciado está ativado na página Configurações avançadas do app.
- Todas as versões fechadas do app atendem aos requisitos de código de versão.
Adicionar uma empresa aos testes fechados
Os desenvolvedores de apps podem adicionar empresas a testes que usam os métodos Teste Alfa fechado ou Teste Alfa usando Grupos do Google. Para instruções, consulte o guia sobre como configurar um teste aberto, fechado ou interno. O desenvolvedor precisa inserir o ID da organização, também conhecido como ID empresarial, de cada empresa participante. Os administradores de TI podem fornecer o ID da organização a desenvolvedores de apps externos seguindo estas etapas:
- Faça login na Google Play Store gerenciada.
- Clique em Configurações de administrador.
- Copie a string do ID da organização na caixa de informações correspondente e envie ao desenvolvedor.
Requisitos adicionais para apps particulares
No caso de apps particulares, o desenvolvedor também precisa adicionar o ID da organização de cada empresa participante na guia Google Play gerenciado da página Configurações avançadas do app. Para conferir as instruções, consulte Publicar um app particular.
Distribuir faixas fechadas para os usuários
Para recuperar uma lista de faixas disponíveis para uma empresa em um app especificado,
chame Products.get
. A lista de appTracks[]
contida na resposta inclui
as faixas disponíveis para cada app. O appTracks[].trackAlias
é um nome legível
pelo usuário para a faixa que pode ser exibido no console de EMM, e o
appTracks[].trackId
é o ID legível por máquina da faixa.
Para conceder visibilidade ao usuário para a faixa fechada de um app, defina o
policy.productPolicy[].trackIds[]
no
policy
do Device
. Se várias faixas estiverem disponíveis para um dispositivo, a
versão disponível com o código de versão mais recente será instalada.
Os trackIds serão removidos automaticamente da chamada Products.get
em determinados
cenários, como os seguintes:
- O APK da faixa é promovido para outra faixa ou para a produção.
- A versão de produção foi atualizada com uma versão mais recente que a faixa.
- Um desenvolvedor interrompe a faixa.
Monitorar as licenças de apps pagos
Em apps pagos, o objeto Grouplicenses
monitora quantas licenças uma
empresa tem e quantas estão em uso. Você pode chamar
Grouplicenses.get
para ver detalhes da licença de um app.
Antes que um app pago possa ser instalado em um dispositivo, a empresa precisa ter uma
licença disponível para o app. Se uma licença estiver disponível, o app será instalado
no dispositivo e um objeto Entitlements
será criado. Um objeto Entitlements
vincula uma licença a um usuário e diminui o número de licenças disponíveis
para o app. Se não houver licenças disponíveis, a instalação do app falhará e
nenhum objeto Entitlements
será criado.
Os objetos Grouplicenses
e Entitlements
não são usados por aplicativos
distribuídos sem custo financeiro.