Cómo compilar interfaces de Google Drive

Los complementos de Google Workspace pueden proporcionar interfaces personalizadas cuando el usuario usa Google Drive. Esto te permite proporcionar al usuario información adicional pertinente, automatizar tareas y conectar sistemas de terceros a Google Drive.

Cómo acceder a la IU del complemento

Puedes abrir un complemento de Google Workspace en Google Drive si su ícono aparece en la columna de íconos en el lado derecho de la interfaz de usuario de Drive. Un complemento de Google Workspace puede definir una interfaz de página principal, una interfaz de selección de elementos o ambas:

  • Si un usuario hace clic en el ícono del complemento mientras está en Google Drive, el complemento ejecuta la función drive.homepageTrigger correspondiente (si está presente). Esta función compila y muestra una tarjeta de página principal a Google Drive para que se muestre. Si no se define ninguna drive.homepageTrigger función, se muestra una tarjeta de página principal genérica.
  • Si el usuario selecciona uno o más elementos en Google Drive y, luego, hace clic en el ícono del complemento , o selecciona elementos mientras el complemento está abierto, el complemento ejecuta la función contextual drive.onItemsSelectedTrigger correspondiente (si está presente). Esta función compila la interfaz contextual "elementos seleccionados" de Google Drive del complemento y la muestra en Google Drive.

Cómo compilar la interfaz de Drive del complemento

Para compilar interfaces que extiendan Google Drive, sigue estos pasos generales:

  1. Decide si quieres que tu complemento tenga una página principal específica de Drive . También decide si quieres proporcionar una interfaz contextual para cuando el usuario seleccione elementos de Drive.
  2. Agrega los campos addOns.common y addOns.drive adecuados a el manifiesto del proyecto de secuencia de comandos del complemento, incluidos los permisos de Drive necesarios.
  3. Si proporcionas una página principal específica de Drive, implementa la drive.homepageTrigger función para compilar esta interfaz. También puedes usar la common.homepageTrigger interfaz para varios hosts de Google Workspace.
  4. Si proporcionas una interfaz de selección de elementos contextual de Drive, debes implementar una drive.onItemsSelectedTrigger función de activación contextual para compilar esta interfaz. Consulta Interfaz contextual de Drive para elementos seleccionados) para obtener más detalles.
  5. Implementa las funciones de devolución de llamada asociadas necesarias para responder a las interacciones de la IU del usuario, como los clics en botones.

Páginas principales de Drive

Google Drive admite la visualización de páginas principales de complementos de Google Workspace . Para mostrar la página principal común de tu complemento en Google Drive, asegúrate de que haya un campo addOns.drive en el manifiesto del complemento.

Como alternativa, agrega un drive.homepageTrigger al manifiesto del complemento para proporcionar una página principal específica de Drive.

En cualquier caso, debes proporcionar el nombre de una función de activación de la página principal en el proyecto de secuencia de comandos del complemento. Se llama automáticamente a esta función para compilar la página principal de Drive cuando es necesario. Debes implementar esta función para compilar y mostrar una sola Card o un array de Card objetos que componen la página principal. La función de activación de la página principal recibe un objeto de evento como parámetro que contiene información general, como la plataforma del cliente. Puedes usar los datos del objeto de evento para adaptar la construcción de la página principal.

Interfaz contextual de Drive para elementos seleccionados

Google Drive se basa en un activador contextual para determinar qué interfaz (si corresponde) mostrar cuando el usuario selecciona uno o más elementos de Google Drive. Cuando se activa el activador, ejecuta la función de activación contextual especificada por el drive.onItemsSelectedTrigger.runFunction campo en el manifiesto del complemento.

Para crear una interfaz de selección de elementos contextual para Drive, debes hacer lo siguiente:

  1. Asegúrate de que el manifiesto del complemento incluya el https://www.googleapis.com/auth/drive.addons.metadata.readonly permiso

  2. Asegúrate de que el manifiesto incluya una drive.onItemsSelectedTrigger sección.

  3. Implementa la función con el nombre del drive.onItemsSelectedTrigger campo. Esta función acepta un objeto de evento como argumento y debe mostrar un solo Card objeto o un array de Card objetos.

  4. Al igual que con cualquier tarjeta, debes implementar las funciones de devolución de llamada que se usan para proporcionar interactividad de widgets para la interfaz. Por ejemplo, si incluyes un botón en la interfaz, debe tener una acción adjunta Action y una función de devolución de llamada implementada que se ejecute cuando se haga clic en el botón.

Objetos de evento

Se crea un objeto de evento y se pasa a la función de activación drive.homepageTrigger o drive.onItemsSelectedTrigger cuando se llama a esas funciones. La función de activación puede usar la información de este objeto de evento para determinar cómo construir tarjetas de complementos o controlar el comportamiento del complemento.

La estructura completa de los objetos de evento se describe en Objetos de evento. Cuando Drive es la app host activa del complemento, los objetos de evento contextuales incluyen el campo de objeto de evento de Drive que contiene información del cliente específica de Drive.

Los objetos de evento contextuales de Drive para los activadores de selección de elementos incluyen información sobre los elementos que el usuario seleccionó cuando se activa el activador. Cuando un usuario selecciona más de un elemento en Drive, se considera que uno de los elementos es de interés principal. Este elemento se conoce como el elemento del cursor activo.

En el siguiente ejemplo, se muestra un objeto de evento de Drive que se pasa a una drive.onItemsSelectedTrigger función:

    {
      "commonEventObject": { ... },
      "drive": {
        "activeCursorItem":{
          "addonHasFileScopePermission": true,
          "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
          "iconUrl": "https://drive-thirdparty.googleusercontent.com...",
          "mimeType":"application/pdf",
          "title":"How to get started with Drive"
        },
        "selectedItems": [
          {
            "addonHasFileScopePermission": true,
            "id":"0B_sX1fXRRU6Ac3RhcnRlcl9maWxl",
            "iconUrl":"https://drive-thirdparty.googleusercontent.com...",
            "mimeType":"application/pdf",
            "title":"How to get started with Drive"
          },
          ...
        ]
      },
      ...
    }