Best Practices

Verbessern Sie die Nutzererfahrung Ihrer Nutzer, indem Sie diese Leitfäden für das Add-on-Design verwenden.

Allgemeine Best Practices

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

Add-on-Inhaberschaft vor dem Start festlegen

Add-ons werden durch Apps Script-Projekte definiert, die einem bestimmten Konto gehören oder in einer geteilten Ablage gespeichert sein müssen. Bevor Sie ein Add-on codieren, legen Sie fest, welches Konto Inhaber des Projekts und welches Konto der Publisher ist. Legen Sie außerdem fest, welche Konten als Mitwirkende fungieren sollen , und sorgen Sie dafür, dass diese Konten Zugriff auf das Skriptprojekt und das zugehörige Google Cloud-Projekt haben.

Google Workspace erweitern, nicht replizieren

Add-ons sollen den Google Workspace-Anwendungen, die sie erweitern, neue Funktionen bieten oder komplexe Aufgaben automatisieren. Add-ons, die lediglich Funktionen replizieren, die bereits in der Anwendung vorhanden sind, oder die keine wesentlichen Verbesserungen an einem Workflow vornehmen, bestehen die Add-on-Überprüfung für die Veröffentlichung wahrscheinlich nicht.

Bereiche einschränken

Wenn Sie Ihre Bereiche explizit definieren, wählen Sie immer die am wenigsten permissive Gruppe von Bereichen aus. Ihr Add-on sollte beispielsweise nicht mit dem Bereich https://www.googleapis.com/auth/calendar vollständigen Zugriff auf den Kalender des Nutzers anfordern, wenn nur Lesezugriff erforderlich ist. Verwenden Sie für den schreibgeschützten Zugriff den Bereich https://www.googleapis.com/auth/calendar.readonly.

Nicht zu stark auf Bibliotheken verlassen

Wenn Sie Apps Script-Bibliotheken verwenden, kann es sein, dass Ihr Add-on langsamer ausgeführt wird, als wenn der gesamte Apps Script-Code in einem einzigen Skriptprojekt enthalten wäre. Apps Script-Bibliotheken funktionieren zwar in Add-ons, aber ihre Verwendung kann zu Leistungseinbußen führen. Vermeiden Sie es, unnötige Bibliotheken in Ihr Projekt aufzunehmen, und überlegen Sie, wie Sie die Abhängigkeit Ihres Add-ons von ihnen verringern 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 ohne diese Latenz verwenden.

Best Practices für Google Workspace-Add-ons

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

Nur wenige Karten verwenden

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

Erstellen Sie nicht mehr Karten als nötig.

Funktionen zur Widget-Erstellung verwenden

Wenn Sie Code schreiben, der eine Card oder andere komplexe UI-Objekte erstellt, sollten Sie diesen Code in eine eigene Funktion einfügen. Diese Erstellungsfunktion sollte nur das Objekt erstellen und zurückgeben. So können Sie das 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 für den Nutzer ausgeblendet. Optimieren Sie Ihr Add-on und bieten Sie genau das, was der Nutzer braucht, und nicht mehr.

Fehlerkarten verwenden

Erstellen Sie Karten für Fehlerbedingungen. Wenn in Ihrem Add-on ein Fehler auftritt, sollte eine Karte mit den Fehlerinformationen und gegebenenfalls einer Anleitung zur Behebung des Fehlers angezeigt werden. Wenn Ihr Add-on beispielsweise keine Verbindung zu einem Nicht-Google-Dienst herstellen konnte, weil die Autorisierung fehlgeschlagen ist, zeigen Sie eine Karte mit dieser Information an und bitten Sie den Nutzer, die verwendeten Kontoinformationen zu überprüfen.

Tests und Testnachrichten schreiben

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

Wenn Sie Aktions-Callback Funktionen verwenden, müssen Sie in der Regel ein Antwortobjekt erstellen. Mit Anweisungen wie den folgenden können Sie prüfen, ob die Antworten korrekt erstellt werden:

    Logger.log(response.printJson());

Führen Sie Testfunktionen, die Sie erstellen, direkt im Apps Script-Editor über das Menü Ausführen aus. Wenn Sie ein funktionierendes Add-on haben, stellen Sie sicher, dass Sie die unveröffentlichte Version installieren, 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 ihre Nachrichten-IDs, damit Sie prüfen können, ob das Add-on wie erwartet funktioniert, wenn unterschiedliche Nachrichteninhalte verwendet werden. Sie können die Nachrichten-ID für eine bestimmte Nachricht abrufen, indem Sie Nachrichten mit der Gmail APIusers.messages.listMethode auflisten oder den Gmail-Dienst von Apps Script verwenden.

Best Practices für Videokonferenzen in Google Kalender

Wenn Ihr Add-on Videokonferenzoptionen von Drittanbietern in Google Kalender einbindet, beachten Sie diese zusätzlichen Best Practices:

onCreateFunction einfach halten

Jede onCreateFunction , die Sie in Ihrem Manifest definieren, wird synchron aufgerufen, wenn ein Nutzer versucht, eine Konferenzlösung dieses Typs zu erstellen. Diese Funktionen sollten nur die Mindestarbeit ausführen, die zum Erstellen der Konferenz erforderlich ist. Wenn Sie zu viel in diesen Funktionen ausführen, kann dies zu einer langsamen Nutzererfahrung für Ihr Add-on führen.

Geeignete ConferenceData-Felder für Konferenzdaten verwenden

Wenn Sie ConferenceData -Objekte erstellen, können Sie sie mit Details zur Konferenz füllen (Zugriffscodes, Telefonnummern, PINs, URIs usw.). Verwenden Sie für diese Informationen das entsprechende EntryPoint Feld. Platzieren Sie diese Details nicht im Feld für die Notizen von ConferenceData.

Konferenzdetails nicht an den Kalendertermin anhängen

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