Distribuir apps

As seções a seguir oferecem informações úteis sobre a distribuição de apps na Google Play Store gerenciada.

Instalar apps

Você pode instalar apps Android da Google Play Store em dispositivos usando a política. Para usar esse recurso, você precisa saber o nome do pacote do app que quer instalar. Para encontrar o nome do pacote do app, você tem duas opções:

  1. O nome do pacote do app está no URL da página da Google Play Store. Por exemplo, o URL da página do app Google Chrome é

    https://play.google.com/store/apps/details?id=com.android.chrome
    , e o nome do pacote é com.android.chrome.

  2. É possível incorporar o iframe do Google Play gerenciado no console de EMM para permitir que os clientes naveguem na Google Play Store. Quando o cliente seleciona um app no iframe, o Console de EMM recebe o nome do pacote no evento.

Em seguida, você pode adicionar o app na política do dispositivo:

"applications":[
   {
      "installType":"FORCE_INSTALLED",
      "packageName":"com.android.chrome",
   },
],

Quando você aplica a política a um dispositivo, o app é instalado ou adicionado à Google Play Store gerenciada do dispositivo.

Distribuir apps para testes fechados

No Play Console, os desenvolvedores de apps podem criar uma versão fechada (faixa fechada) para testar versões de pré-lançamento com um conjunto de testadores. Isso é chamado de teste fechado. O suporte à distribuição de faixa fechada permite que as organizações testem apps de terceiros e qualquer app particular que desenvolvam internamente.

Ao configurar um teste fechado no Play Console, os desenvolvedores de apps podem segmentar até 100 organizações (enterprises). Use a API Android Management para recuperar as faixas fechadas destinadas a uma empresa e distribuí-las para dispositivos usando a política.

Apps qualificados para testes fechados

Antes de configurar um teste fechado, os desenvolvedores de apps precisam verificar se o app atende aos seguintes requisitos:

  • Uma versão de produção do app é publicada no Google Play (ou no Google Play gerenciado, para apps particulares).
  • 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

Ao configurar um teste fechado, os desenvolvedores de apps podem conceder a uma organização acesso a testes fechados adicionando o ID da organização. Os clientes podem localizar o ID da organização usando estas instruções:

  1. Faça login no Google Play gerenciado usando uma conta de administrador.
  2. Clique em Configurações de administrador.
  3. Copie a string do ID da organização na caixa de informações correspondente e envie ao desenvolvedor.

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 ver instruções, consulte Publicar apps particulares no Play Console.

Distribuir faixas fechadas para os usuários

Para recuperar uma lista de faixas disponíveis para uma empresa em um app especificado, chame enterprises.applications. A lista appTrackInfo[] incluída na resposta contém o seguinte para determinados apps:

  • trackId: identificador exclusivo da faixa, extraído do releaseTrackId no URL da página no Play Console que mostra as informações da faixa do app.
  • trackAlias: o nome legível da faixa, que pode ser modificado no Play Console.

Para instalar uma faixa fechada no dispositivo de um usuário, especifique o accessibleTrackIds na política do dispositivo:

"applications":[
   {
      "installType":"AVAILABLE",
      "packageName":"com.google.android.gm",
      "accessibleTrackIds":[
          "123456",
          "789101"
       ]
   },
],

Se uma política tiver várias faixas do mesmo app (como no exemplo acima), a política vai instalar a faixa com o código de versão mais alto.

Os trackIds serão removidos automaticamente da chamada enterprises.applications em determinadas situações, como:

  • 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.

Iframe do Google Play gerenciado

Com o iframe do Google Play gerenciado, você pode incorporar o Google Play gerenciado diretamente no console de EMM para oferecer aos clientes uma experiência unificada de gerenciamento de mobilidade.

Managed-play-iframe
Figura 1. iframe do Google Play gerenciado

O iframe contém uma barra de título e um menu lateral expansível. No menu, os usuários podem navegar para diferentes páginas:

  • Pesquisar apps: permite que os administradores de TI pesquisem e naveguem em apps do Google Play, além de ver detalhes e selecionar apps.
  • Apps particulares: permite que os administradores de TI publiquem e gerenciem apps particulares para a empresa.
  • Apps da Web: permite que os administradores de TI publiquem e distribuam atalhos de sites como apps.
  • Organizar apps: permite que os administradores de TI configurem a forma como os apps são organizados na Play Store nos dispositivos dos usuários.

Recursos

Esta seção descreve os recursos disponíveis no iframe do Google Play gerenciado. Para mais informações sobre como incorporar o iframe e implementar esses recursos, consulte Adicionar o iframe ao seu console.


Adicionar o iframe ao seu console

Etapa 1. Gerar um token da Web

Chame enterprises.webTokens.create para gerar um token da Web que identifique a empresa. A resposta contém o value do token.

  • Defina parentFrameUrl como o URL do frame pai que hospeda o iframe.
  • Use iframeFeature para especificar quais recursos serão ativados no iframe: PLAY_SEARCH, PRIVATE_APPS, WEB_APPS, STORE_BUILDER (organizar apps). Se iframeFeature não estiver definido, o iframe vai ativar todos os recursos por padrão.

Etapa 2. Renderizar o iframe

Confira um exemplo de como renderizar o iframe do Google Play gerenciado:

<script src="https://apis.google.com/js/api.js"></script>
<div id="container"></div>
<script>
  gapi.load('gapi.iframes', function() {
    var options = {
      'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT',
      'where': document.getElementById('container'),
      'attributes': { style: 'width: 600px; height:1000px', scrolling: 'yes'}
    }

    var iframe = gapi.iframes.getContext().openChild(options);
  });
</script>

Esse código gera um iframe dentro do contêiner div. Os atributos a serem aplicados à tag de iframe podem ser definidos com a opção "atributos", conforme mencionado anteriormente.

Parâmetros de URL

A tabela abaixo lista todos os parâmetros disponíveis para o iframe que podem ser adicionados ao URL como parâmetros de URL, por exemplo:

'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT&showsearchbox=TRUE',
Parâmetro página; Obrigatório Descrição
token N/A Sim O token retornado da Etapa 1.
iframehomepage N/A Não A página inicial exibida quando o iframe é renderizado. Os valores possíveis são PLAY_SEARCH, WEB_APPS, PRIVATE_APPS e STORE_BUILDER (organizar apps). Se não for especificada, a seguinte ordem de precedência determinará qual página será exibida: 1. PLAY_SEARCH, 2. PRIVATE_APPS, 3. WEB_APPS, 4. STORE_BUILDER.
locale N/A Não É uma tag de idioma BCP 47 bem formada que é usada para localizar o conteúdo no iframe. Se não for especificado, o valor padrão será en_US.
mode Pesquisar apps Não SELECT: permite que os administradores de TI selecionem apps.
APPROVE (padrão): permite que os administradores de TI selecionem, aprovem e reprovem apps. Esse modo foi descontinuado. Use SELECT. O modo APROVAÇÃO só funciona se PlaySearch.ApproveApps estiver definido como true no token da Web.
showsearchbox Pesquisar apps Não TRUE (padrão): exibe a caixa de pesquisa e inicia a consulta de pesquisa do iframe.
FALSE: a caixa de pesquisa não será exibida.
search Pesquisar apps Não String de pesquisa. Se especificada, o iframe direciona o administrador de TI para os resultados da pesquisa com a string especificada.

Etapa 3. Processar eventos de iframe

Você também precisa processar os eventos a seguir como parte da integração.

EventoDescrição
onproductselect O usuário seleciona ou aprova um app. Isso retorna um objeto contendo:
{
    "packageName": The package name of the app, e.g. "com.google.android.gm",
    "productId": The product ID of the app, e.g. "app:com.google.android.gm",
    "action": The type of action performed on the document. Possible values are:
    "approved", "unapproved" or "selected." If you implement the iframe in SELECT
    mode, the only possible value is "selected".
}
    
O exemplo abaixo mostra como ouvir onproductselect:
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);


Fazer upload do seu próprio app para a Google Play Store

Se você ou seu cliente desenvolver um app Android, faça upload dele na Play Store usando o Google Play Console.

Se você não quiser que o app seja disponibilizado publicamente na Play Store, restrinja o app a uma única empresa usando o Google Play Console. Outra opção é publicar um app particular de maneira programática usando a API Google Play Custom App Publishing. Os apps particulares só estão disponíveis para a empresa a que estão restritos. Eles ainda podem ser instalados usando uma política, mas não são visíveis para usuários fora da empresa.