Best Practices

Mit diesen Anleitungen zum Design von Add-ons können Sie die Nutzerfreundlichkeit Ihrer Add-ons verbessern.

Allgemeine Best Practices

Wir empfehlen Ihnen, die folgenden Best Practices für alle von Ihnen entwickelten Add-ons zu beachten.

Inhaber des Add-ons vor Beginn ermitteln

Add-ons werden über Apps Script-Projekte definiert, deren Inhaber ein bestimmtes Konto sein muss oder die sich in einer freigegebenen Ablage befinden müssen. Bevor Sie ein Add-on programmieren, müssen Sie festlegen, welchem Konto das Projekt zugewiesen werden soll und welches Konto als Publisher fungiert. Legen Sie außerdem fest, welche Konten als Mitbearbeiter fungieren sollen, und achten Sie darauf, dass diese Konten Zugriff auf das Scriptprojekt und das zugehörige Cloud-Plattformprojekt haben.

 Google Workspace erweitern, nicht replizieren

Add-ons sollen den erweiterten Google Workspace-Anwendungen neue Funktionen bieten oder komplexe Aufgaben automatisieren. Add-ons, die lediglich Funktionen der Anwendung duplizieren oder keine wesentlichen Verbesserungen an einem Workflow vornehmen, bestehen die Add-on-Prüfung für die Veröffentlichung wahrscheinlich nicht.

Begrenzen Sie den Geltungsbereich.

Wählen Sie beim expliziten Definieren von Bereichen immer den möglichst restriktiven Bereich aus. Fordern Sie beispielsweise nicht den vollständigen Zugriff auf den Kalender des Nutzers mit dem Bereich https://www.googleapis.com/auth/calendar an, wenn nur Lesezugriff erforderlich ist. Verwenden Sie für den Lesezugriff den Bereich https://www.googleapis.com/auth/calendar.readonly.

Nicht zu stark auf Bibliotheken angewiesen sein

Wenn Sie Apps Script-Bibliotheken verwenden, kann Ihr Add-on langsamer laufen als wenn der gesamte Apps Script-Code in einem einzigen Script-Projekt enthalten wäre. Apps Script-Bibliotheken funktionieren zwar in Add-ons, es kann jedoch zu Leistungseinbußen kommen, wenn Sie sie verwenden. Fügen Sie Ihrem Projekt keine unnötigen Bibliotheken hinzu und überlegen Sie, wie Sie die Abhängigkeit Ihres Add-ons von ihnen reduzieren können.

Die oben beschriebene Latenz gilt nur für Apps Script-Projekte, die als serverseitige Bibliotheken verwendet werden. Sie können clientseitige JavaScript-Bibliotheken wie jQuery frei verwenden, ohne dass diese Latenz auftritt.

Best Practices für Google Workspace-Add-ons

Die folgenden Best Practices gelten nur für Google Workspace-Add-ons und die Verwendung des Kartendiensts.

Nur wenige Karten verwenden

Wenn das Add-on zu viele Karten verwendet, wird die Navigationskonfiguration komplex und schwer zu verwalten.

Versuchen Sie, nicht mehr Karten als nötig zu erstellen.

Funktionen zum Erstellen von Widgets verwenden

Wenn Sie Code schreiben, mit dem Card oder andere komplexe UI-Objekte erstellt werden, sollten Sie diesen Code in einer eigenen Funktion platzieren. Diese Erstellungsfunktion sollte das Objekt nur erstellen und zurückgeben. So können Sie dieses Objekt schnell neu generieren, wenn die Benutzeroberfläche aktualisiert werden muss. Denken Sie daran, build() aufzurufen, nachdem Sie die Builder-Klassen im Kartendienst verwendet haben.

Karten einfach halten

Wenn eine Karte zu viele Widgets enthält, kann sie zu viel Platz auf dem Bildschirm einnehmen und weniger nützlich sein. Große Kartenabschnitte werden zwar als minimierbare UI-Elemente gerendert, aber dadurch werden Informationen vor den Nutzern verborgen. Optimieren Sie Ihr Add-on und bieten Sie genau das, was der Nutzer benötigt – und nicht mehr.

Fehlerkarten verwenden

Erstellen Sie Karten für Fehlerbedingungen. Wenn Ihr Add-on einen Fehler verursacht, sollte eine Karte mit den Fehlerinformationen und einer Anleitung zur Fehlerbehebung angezeigt werden, sofern möglich. Wenn Ihr Add-on beispielsweise keine Verbindung zu einem Drittanbieterdienst herstellen konnte, weil die Autorisierung fehlgeschlagen ist, zeigen Sie eine Karte mit dieser Information an und bitten Sie den Nutzer, die verwendeten Kontoinformationen zu bestätigen.

 Tests und Testnachrichten schreiben

Sie sollten alle von Ihnen erstellten Add-ons gründlich testen. Erstellen Sie Testfunktionen, mit denen Karten und Widgets mit Testdaten erstellt werden, und prüfen Sie dann, ob die Objekte wie erwartet erstellt werden.

Wenn du Action-Callback-Funktionen verwendest, musst du normalerweise ein Antwortobjekt erstellen. Mithilfe von Anweisungen wie der folgenden können Sie prüfen, ob die Antworten korrekt erstellt werden:

    Logger.log(response.printJson());

Sie können Testfunktionen, die Sie erstellen, direkt über das Menü Ausführen im Apps Script-Editor ausführen. Wenn Sie ein funktionierendes Add-on haben, installieren Sie die nicht veröffentlichte Version, damit Sie es testen können.

Verwenden Sie Testdaten, die für jede Hostanwendung geeignet sind, die das Add-on erweitert. Wenn das Add-on beispielsweise Gmail erweitert, benötigen Sie wahrscheinlich einige Test-E-Mails und deren Nachrichten-IDs, damit Sie sicher sein können, dass das Add-on bei unterschiedlichen Nachrichteninhalten wie erwartet funktioniert. Sie können die Nachrichten-ID für eine bestimmte Nachricht abrufen, indem Sie Nachrichten mit der Methode Gmail API Users.messages.list auflisten oder den Gmail-Dienst von Apps Script verwenden.

Best Practices für Videokonferenzen in Google Kalender

Wenn Ihr Add-on Konferenzoptionen für Kalender von Drittanbietern in Google Kalender einbindet, beachten Sie die folgenden zusätzlichen Best Practices:

 onCreateFunction anlassen

Jede onCreateFunction, die Sie in Ihrem Manifest definieren, wird synchron aufgerufen, wenn ein Nutzer versucht, eine Konferenzlösung dieses Typs zu erstellen. Achten Sie darauf, dass diese Funktionen nur die für die Erstellung der Konferenz erforderlichen Aktionen ausführen. Wenn Sie zu viele dieser Funktionen verwenden, kann das die Nutzerfreundlichkeit Ihres Add-ons beeinträchtigen.

Geeignete ConferenceData-Felder für Konferenzdaten verwenden

Wenn Sie ConferenceData-Objekte erstellen, können Sie sie mit Details zur Konferenz füllen (z. B. Zugangscodes, Telefonnummern, Markierungen, URIs). Verwenden Sie für diese Informationen das entsprechende Feld EntryPoint. Geben Sie diese Details nicht in das Notizenfeld ConferenceData ein.

 Fügen Sie dem Google Kalender-Termin keine Konferenzdetails hinzu.

Ihr Add-on muss der Google Kalender-Terminbeschreibung keine Informationen zu erstellten Konferenzen von Drittanbietern hinzufügen. Google Kalender erledigt das bei Bedarf automatisch.