Iframe de Google Play administrado

Con el iframe de Google Play administrado, puedes incorporar Google Play administrado directamente en tu consola de EMM para ofrecer a los clientes una experiencia unificada de administración de dispositivos móviles.

iframe de Google Play administrado
Figura 1: El iframe de Google Play administrado que muestra la página de apps de búsqueda

El iframe contiene una barra de título y un menú lateral expandible. Desde el menú, los usuarios pueden navegar a diferentes páginas:

  • Buscar apps: Permite que los administradores de TI busquen y exploren apps de Google Play, vean los detalles de las apps y seleccionen apps.
  • Apps privadas: Permite que los administradores de TI publiquen y administren apps privadas para su empresa.
  • Apps web: Permite que los administradores de TI publiquen y distribuyan atajos de sitios web como apps.
  • Organizar apps: Permite que los administradores de TI configuren la forma en que se organizan las apps en la app de Play Store en los dispositivos de los usuarios.

Todas las páginas están habilitadas en el iframe de forma predeterminada, pero se pueden inhabilitar de forma individual (consulta Agrega el iframe a tu consola).


Funciones

En esta sección, se describen las funciones disponibles en el iframe de Google Play administrado. Si deseas obtener información para incorporar el iframe y cómo implementar estas funciones, consulta Cómo agregar el iframe a tu consola.


Agrega el iframe a tu consola

Paso 1: Genera un token web

Para generar un token web que identifique a la empresa, llama a Enterprises.createWebToken. En el siguiente ejemplo, se muestra cómo recuperar el token con la biblioteca cliente de la API de EMM de Google Play para Java.

Todas las páginas del iframe están habilitadas de forma predeterminada. Cuando generas un token web, puedes especificar qué páginas inhabilitar. En el siguiente ejemplo, se inhabilitan Apps privadas, Apps web y Organizar apps.

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();
}

Cuando renderizas el iframe en tu consola, debes incluir el token que se muestra, junto con otros parámetros.

Paso 2. Procesa el iframe

A continuación, se incluye un ejemplo de cómo renderizar el iframe administrado de 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>

Este código genera un iframe dentro del contenedor div. Los atributos que se aplican a la etiqueta de iframe se pueden configurar con la opción "attributes", como se explicó anteriormente.

Parámetros de URL

La siguiente tabla incluye todos los parámetros disponibles para el iframe que se pueden agregar a la URL como parámetros de URL, p. ej.:

'url': 'https://play.google.com/work/embedded/search?token=web_token&mode=SELECT&showsearchbox=TRUE',
Parámetro Página Obligatorio Descripción
token N/A El token que se muestra en el Paso 1.
iframehomepage N/A No Es la página inicial que se muestra cuando se renderiza el iframe. Los valores posibles son PLAY_SEARCH, WEB_APPS, PRIVATE_APPS y STORE_BUILDER (organizar apps). Si no se especifica, el siguiente orden de prioridad determina la página que se mostrará: 1. PLAY_SEARCH y 2. PRIVATE_APPS y 3. WEB_APPS y 4. STORE_BUILDER.
locale N/A No Una etiqueta de idioma BCP 47 bien formada que se usa para localizar el contenido en el iframe. Si no se especifica, el valor predeterminado es en_US.
mode Buscar apps No SELECT: Permite que los administradores de TI seleccionen apps.
APPROVE (predeterminada): Permite que los administradores de TI seleccionen, aprueben y anulen la aprobación de apps.
showsearchbox Buscar apps No TRUE (predeterminado): Muestra el cuadro de búsqueda e inicia la búsqueda desde el iframe.
FALSE: no se muestra el cuadro de búsqueda.
search Buscar apps No Cadena de búsqueda. Si se especifica, el iframe dirige al administrador de TI a los resultados de la búsqueda con la cadena especificada.

Paso 3: Controla los eventos de iframe

También debes controlar los siguientes eventos como parte de tu integración.

EventoDescripción
onproductselect El usuario selecciona o aprueba una app. Esto muestra un objeto que contiene lo siguiente:
{
    "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".
}
    
En el siguiente ejemplo, se muestra cómo escuchar onproductselect:
iframe.register('onproductselect', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);