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 de gerenciamento de mobilidade unificada.

Iframe do Google Play gerenciado
Figura 1. O iframe do Google Play gerenciado mostrando a página "Pesquisar apps".

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 pelos apps do Google Play, acessem os detalhes dos apps e selecionem apps.
  • Apps particulares: permite que administradores de TI publiquem e gerenciem apps particulares para a empresa.
  • Apps da Web: permite que administradores de TI publiquem e distribuam atalhos de sites como apps.
  • Organizar apps: permite que os administradores de TI configurem como os apps são organizados na Play Store nos dispositivos dos usuários.

Todas as páginas são ativadas no iframe por padrão, mas podem ser desativadas individualmente (consulte Adicionar o iframe ao console).


Recursos

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


Adicionar o iframe ao console

Etapa 1. Gerar um token da Web

Para gerar um token da Web que identifique a empresa, chame Enterprises.createWebToken. O exemplo a seguir mostra como recuperar o token usando a Biblioteca de cliente de API EMM do Google Play para Java.

Todas as páginas no iframe são ativadas por padrão. Ao gerar um token da Web, você pode especificar quais páginas serão desativadas. O exemplo abaixo desativa os apps particulares, da Web e organizados.

public AdministratorWebToken getAdministratorWebToken(
        String enterpriseId) throws IOException {
    AdministratorWebTokenSpec tokenSpec = new AdministratorWebTokenSpec();
    tokenSpec.setParent("https://my-emm-console.com");
    tokenSpec.setPlaySearch(new AdministratorWebTokenSpecPlaySearch());
    tokenSpec.setPrivateApps(new AdministratorWebTokenSpecPrivateApps().setEnabled(false));
    tokenSpec.setWebApps(new AdministratorWebTokenSpecWebApps().setEnabled(false));
    tokenSpec.setStoreBuilder(new AdministratorWebTokenSpecStoreBuilder().setEnabled(false));
    return androidEnterprise
        .enterprise()
        .createWebToken(enterpriseId, tokenSpec)
        .execute();
}

É necessário incluir o token retornado, junto com outros parâmetros, ao renderizar o iframe no console.

Etapa 2. Renderizar o iframe

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

<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 iframe podem ser definidos com a opção "attributes", como acima.

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 na 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 especificado, a ordem de precedência a seguir determina 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 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 cancelem a aprovação de apps.
showsearchbox Pesquisar apps Não TRUE (padrão): mostra a caixa de pesquisa e inicia a consulta de pesquisa no iframe.
FALSE: a caixa de pesquisa não é mostrada.
search Pesquisar apps Não String de pesquisa. Se especificado, o iframe direciona o administrador de TI aos 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 que contém:
{
    "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 detectar onproductselect:
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);