Creare interfacce di Google Drive

I componenti aggiuntivi di Google Workspace possono fornire interfacce personalizzate quando un utente apre Drive. In questo modo puoi fornire all'utente informazioni aggiuntive pertinenti, automatizzare le attività e connettere sistemi di terze parti a Drive.

Accedere all'interfaccia utente del componente aggiuntivo di Google Workspace

Puoi aprire il componente aggiuntivo in Drive se la sua icona viene visualizzata nella colonna delle icone sul lato destro dell'interfaccia utente di Drive. Un componente aggiuntivo può definire un'interfaccia della home page, un'interfaccia di selezione degli elementi o entrambe:

  • Se un utente fa clic sull'icona del componente aggiuntivo in Drive, il componente aggiuntivo esegue la funzione drive.homepageTrigger corrispondente (se presente). Questa funzione crea e restituisce una scheda della home page a Drive per la visualizzazione. Se non è definita alcuna funzione drive.homepageTrigger, viene visualizzata una scheda generica della home page.
  • Se l'utente seleziona uno o più elementi in Drive e poi fa clic sull'icona del componente aggiuntivo o seleziona gli elementi mentre il componente aggiuntivo è aperto, il componente aggiuntivo esegue la funzione contestuale drive.onItemsSelectedTrigger (se presente). Questa funzione crea l'interfaccia "elementi selezionati" contestuale di Drive del componente aggiuntivo e la restituisce a Drive per la visualizzazione.

Crea l'interfaccia del componente aggiuntivo Drive

Crea interfacce che estendono Drive seguendo questi passaggi generali:

  1. Decidi se vuoi che il componente aggiuntivo abbia una home page specifica di Drive. Decidi anche se vuoi fornire un'interfaccia contestuale per quando l'utente seleziona gli elementi di Drive.
  2. Aggiungi i campi addOns.common e addOns.drive al manifest del progetto di script del componente aggiuntivo, inclusi gli ambiti di Drive richiesti.
  3. Se fornisci una home page specifica di Drive, implementa la funzione drive.homepageTrigger per creare questa interfaccia. Puoi anche scegliere di utilizzare l'interfaccia common.homepageTrigger per più host Google Workspace.
  4. Se fornisci un'interfaccia di selezione contestuale degli elementi di Drive, devi implementare una funzione di attivazione contestuale drive.onItemsSelectedTrigger per creare questa interfaccia. Per maggiori dettagli, consulta Interfaccia contestuale di Drive per gli elementi selezionati.
  5. Implementa le funzioni di callback associate necessarie per rispondere alle interazioni dell'utente con la UI, ad esempio i clic sui pulsanti.

Home page di Drive

Drive supporta la visualizzazione delle home page dei componenti aggiuntivi. Per mostrare la home page comune del componente aggiuntivo in Drive, assicurati che nel manifest del componente aggiuntivo sia presente un campo addOns.drive.

In alternativa, aggiungi un drive.homepageTrigger al manifest del componente aggiuntivo per fornire una home page specifica di Drive.

In entrambi i casi, fornisci il nome di una funzione di attivazione della home page nel progetto di script del componente aggiuntivo. Questa funzione viene chiamata automaticamente per creare la home page di Drive quando è necessario. Implementa questa funzione per creare e restituire un singolo Card o un array di oggetti Card che compongono la home page. Alla funzione di attivazione della home page viene passato un oggetto evento come parametro che contiene alcune informazioni generali, ad esempio la piattaforma del client. Utilizza i dati dell'oggetto evento per creare la home page.

Interfaccia contestuale di Drive per gli elementi selezionati

Drive si basa su un trigger contestuale per determinare quale interfaccia (se presente) visualizzare quando l'utente seleziona uno o più elementi di Drive. Quando viene attivato, esegue la funzione di attivazione contestuale specificata dal campo drive.onItemsSelectedTrigger.runFunction nel manifest del componente aggiuntivo.

Per creare un'interfaccia di selezione degli elementi contestuali per Drive, devi:

  1. Assicurati che il manifest del componente aggiuntivo includa https://www.googleapis.com/auth/drive.addons.metadata.readonly scope.

  2. Assicurati che il manifest includa una sezione drive.onItemsSelectedTrigger.

  3. Implementa la funzione denominata nel campo drive.onItemsSelectedTrigger. Questa funzione accetta un oggetto evento come argomento e deve restituire un singolo oggetto Card o un array di oggetti Card.

  4. Come per qualsiasi scheda, implementa le funzioni di callback utilizzate per fornire l'interattività dei widget per l'interfaccia. Ad esempio, se includi un pulsante nell'interfaccia, deve avere un'azione allegata e una funzione di callback implementata che viene eseguita quando viene fatto clic sul pulsante.

Oggetti evento

Viene creato un oggetto evento e passato alla funzione trigger drive.homepageTrigger o drive.onItemsSelectedTrigger quando vengono chiamate queste funzioni. La funzione trigger utilizza le informazioni in questo oggetto evento per determinare come creare schede dei componenti aggiuntivi o controllare in altro modo il comportamento dei componenti aggiuntivi.

La struttura completa degli oggetti evento è descritta in Oggetti evento. Quando Drive è l'app host del componente aggiuntivo, gli oggetti evento contestuali includono il campo Oggetto evento Drive che contiene informazioni specifiche del client Drive.

Gli oggetti evento contestuali di Drive per gli attivatori di selezione degli elementi includono informazioni sugli elementi selezionati dall'utente quando l'attivatore si attiva. Quando un utente seleziona più di un elemento in Drive, uno degli elementi viene considerato di interesse primario; questo elemento viene chiamato elemento cursore attivo.

Se il comportamento del componente aggiuntivo deve essere applicato a più elementi selezionati, utilizza le informazioni fornite nell'array drive.selectedItems nell'oggetto evento per identificarli tutti.

Quando il comportamento di un componente aggiuntivo deve essere applicato solo a un singolo elemento selezionato, utilizza le informazioni fornite nel campo drive.activeCursorItem dell'oggetto evento per identificare l'elemento nella selezione completa. Non tentare di dedurre quale elemento utilizzare dall'array drive.selectedItems.

L'esempio seguente mostra un oggetto evento Drive passato a una funzione drive.onItemsSelectedTrigger:

{
  "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"
      },
      ...
    ]
  },
  ...
}