Crea una empresa

Un recurso Enterprise vincula una organización a tu solución de administración de Android. Devices y Policies pertenecen a una empresa. Por lo general, un solo recurso empresarial está asociado con una sola organización. Sin embargo, puedes crear varias empresas para la misma organización según sus necesidades. Por ejemplo, una organización puede querer empresas diferentes para sus diferentes departamentos o regiones.

Los pasos básicos para crear una empresa se describen en la guía de inicio rápido. En esta página, se describe el proceso con más detalle. Hay dos maneras de crear una empresa:

  • Empresa administrada por el cliente: esta es la forma recomendada de crear una empresa. No configures el parámetro de consulta agreementAccepted y el campo contactInfo cuando llames al método “enterprises.create”.
  • Empresa administrada por EMM: Este no es el método preferido para crear una empresa, pero es posible crear y administrar una empresa administrada por EMM con este método. Establece el parámetro de consulta agreementAccepted y el campo contactInfo cuando llames al método “enterprises.create”.

Empresas administradas por los clientes

Este es el método preferido para crear una empresa y se explica con más detalle de la siguiente manera:

1. Recuperar la URL de registro

Llama a signupUrls.create para recuperar la URL de registro y especificar los siguientes dos parámetros:

  • callbackUrl: Una URL HTTPS al que el asistente de configuración te redirecciona después de que se completa el registro empresarial. Esta suele ser la consola de administración.
  • projectId: ID del proyecto

La respuesta contiene un url y una name. Abre el url y anota la name.

2. El administrador de TI empresarial completa el proceso de registro

El url guía al administrador de la empresa durante el proceso de registro. Necesitan una cuenta de Gmail que aún no esté asociada con una empresa. Después de registrar correctamente su empresa, el flujo de registro redirecciona a tu callbackUrl. Se agrega un enterpriseToken a callbackUrl.

Ejemplo

https://example.com/?enterpriseToken=EAH2pBTtGCs2K28dqhq5uw0uCyVzYMqGivap4wdlH7KNlPtCmlC8uyl

3. Crea una empresa

Para crear una empresa, llama a enterprises.create. Además de crear un ID de empresa único, este método te permite definir ciertas configuraciones específicas de la empresa. Por ejemplo, puedes configurar el color predominante que se muestra durante el aprovisionamiento de dispositivos (primaryColor), junto con el nombre o título (enterpriseDisplayName) y el logotipo (logo) que se muestra a los usuarios finales.

Ejemplo

En los siguientes ejemplos, se usa la biblioteca cliente de Java para crear una empresa y mostrar su nombre. Consulta la página de muestra para obtener más detalles sobre cómo usar la biblioteca.

private String createEnterprise(AndroidManagement androidManagementClient)
    throws IOException {
  SignupUrl signupUrl =
      androidManagementClient
          .signupUrls()
          .create()
          .setProjectId("myProject")
          .setCallbackUrl("https://example.com/myEmmConsole")
          .execute();

  String enterpriseToken = displayUrlToAdmin(signupUrl.getUrl());

  Enterprise enterprise =
      androidManagementClient
          .enterprises()
          .create(new Enterprise())
          .setProjectId("myProject")
          .setSignupUrlName(signupUrl.getName())
          .setEnterpriseToken(enterpriseToken)
          .execute();

  return enterprise.getName();
}

/**
 * Displays the signup URL to the admin and returns the enterprise token which
 * is generated after the admin goes through the signup flow. This functionality
 * must be implemented by your management console.
 */
private String displayUrlToAdmin(String url) {
  ...
}

Empresas administradas por EMM

Ya no es la forma recomendada de crear una empresa. Con este método, los EMM controlan el ciclo de vida completo de una empresa. Asegúrate de revisar las Condiciones del Servicio, que incluyen información como la información que se debe recopilar y tus obligaciones con los clientes para esta característica, a fin de garantizar que tu solución cumpla con todos los requisitos de la API. A continuación, se destacan algunos de esos detalles:

1. Requisitos previos

  1. Recopile la dirección de correo electrónico del administrador de la empresa.
  2. Permite que tu cliente te proporcione la información de contacto de su oficial de protección de datos y representante de la Unión Europea. También debes permitir que el cliente modifique la información de contacto y, si lo hace, comunicarle la información de contacto nueva a Google (con enterprises.patch).
  3. Muestra al administrador de la empresa el Acuerdo de Google Play administrado y registra la identidad del cliente y el usuario, además de la fecha y hora de la aceptación en tu propio sistema.

2. Crea la empresa

Para crear una empresa, llama a enterprises.create y pasa los siguientes valores:

  • Configura agreementAccepted como true, según la finalización del paso 3 en los requisitos previos.
  • Configura contactInfo en el recurso Enterprise con los detalles de contacto que recopilaste del administrador empresarial en los pasos 1 y 2. Ten en cuenta que contactEmail es obligatorio. Puede incluir lo siguiente:
    {
      "contactEmail": string,
      "dataProtectionOfficerName": string,
      "dataProtectionOfficerEmail": string,
      "dataProtectionOfficerPhone": string,
      "euRepresentativeName": string,
      "euRepresentativeEmail": string,
      "euRepresentativePhone": string
    }
    
  • Además de crear un ID empresarial único, este método te permite definir ciertas configuraciones específicas de la empresa. Por ejemplo, puedes configurar el color predominante que se mostrará en la IU de la app de administración de dispositivos (primaryColor), junto con el nombre o título (enterpriseDisplayName) y el logotipo (logo) que se muestra a los usuarios finales.

Eres responsable del ciclo de vida (creación, actualización y eliminación) de la empresa. Ahora puedes actualizarla con enterprises.patch y borrarla con enterprises.delete. Debes borrar la empresa cuando el cliente finalice su relación contigo.

3. Actualiza y muestra tus empresas

Para cambiar el contactInfo de una empresa, llama a enterprises.patch y establece contactInfo en el recurso Enterprise. Ten en cuenta lo siguiente:

  • Si update_mask incluye contactInfo y pasas un valor contactInfo vacío, la llamada fallará.
  • Si update_mask no está configurado y se omite contactInfo, no se realizará ningún cambio a contactInfo.

Para recuperar una lista de todas tus empresas administradas por EMM, llama a enterprises.list. La respuesta solo contiene estos campos para cada empresa:

  • name: El nombre de la empresa con el formato enterprises/{enterpriseId}.
  • enterpriseDisplayName: El nombre de la empresa que se muestra a los usuarios

Para recuperar los otros campos, llama a enterprises.get con el name de una empresa específica.

Ejemplo

En los siguientes ejemplos, se usa la biblioteca cliente de Java para crear una empresa y mostrar su nombre. Consulta la página de muestra para obtener más detalles sobre cómo usar la biblioteca.

Para crear una empresa, sigue estos pasos:

private String createEnterprise(AndroidManagement androidManagementClient)
    throws IOException {
  ContactInfo contactInfo = new ContactInfo();
  contactInfo.setContactEmail("contact@example.com");
  contactInfo.setDataProtectionOfficerName("John Doe");
  contactInfo.setDataProtectionOfficerEmail("dpo@example.com");
  contactInfo.setDataProtectionOfficerPhone("+33 1 99 00 98 76 54");
  contactInfo.setEuRepresentativeName("Jane Doe");
  contactInfo.setEuRepresentativeEmail("eurep@example.com");
  contactInfo.setEuRepresentativePhone("+33 1 99 00 12 34 56");

  Enterprise enterprise = new Enterprise();
  enterprise.setEnterpriseDisplayName("Example Enterprise");

  Enterprise enterprise =
      androidManagementClient
          .enterprises()
          .create(enterprise)
          .setProjectId("myProject")
          .setContactInfo(contactInfo)
          .setAgreementAccepted(true)
          .execute();

  return enterprise.getName();
}

Para borrar una empresa, sigue estos pasos:

private void deleteEnterprise(AndroidManagement androidManagementClient, String enterpriseName)
    throws IOException {
  Enterprise enterprise = new Enterprise();
  // The enterprise name is in the form of enterprises/{enterpriseId}
  enterprise.setName(enterpriseName);

  Enterprise enterprise =
      androidManagementClient
          .enterprises()
          .delete(enterprise)
          .execute();
}