Strony domowe

Strony główne to nowa funkcja dodatków do Google Workspace który pozwala zdefiniować jedną lub więcej kart niekontekstowych. Karty niekontekstowe służą do wyświetlania interfejsu użytkownika, gdy poza określonym kontekstem, na przykład gdy użytkownik przegląda skrzynkę odbiorczą Gmaila ale nie otworzyła wiadomości ani wersji roboczej.

Na stronach głównych możesz wyświetlać treści niezwiązane z kontekstem, tak jak Aplikacje Google panel boczny szybkiego dostępu (Keep, Kalendarz i Lista zadań). Strony główne mogą też być źródłem początkowych miejsce, w którym użytkownik uruchomi Twój dodatek po raz pierwszy, i przydaje się podczas nauczania jak korzystać z dodatku.

Możesz zdefiniować stronę główną dodatku, określając ją w projekcie w pliku manifestu i zaimplementuj co najmniej 1 funkcję homepageTrigger (patrz Konfiguracja strony głównej).

Możesz mieć wiele stron głównych, po 1 dla każdej aplikacji hostującej zainstalowany dodatek Można również zdefiniować jedną wspólną, domyślną stronę główną, używany w hostach, dla których nie określono niestandardowej strony głównej.

Strona główna dodatku wyświetla się, gdy spełniony jest jeden z tych warunków:

  • Pierwsze otwarcie dodatku na hoście (po autoryzacji).
  • Gdy użytkownik przełącza się z kontekstu na nie gdy dodatek jest otwarty. Na przykład podczas edytowania wydarzenia w Kalendarzu do głównej wersji Kalendarza.
  • Gdy użytkownik kliknie przycisk Wstecz tyle razy, by Wyciągnij wszystkie pozostałe karty z wewnętrznych stosów.
  • Gdy interakcja w interfejsie na karcie niekontekstowej skutkuje Navigation.popToRoot() .

Zaprojektowanie strony głównej nie jest obowiązkowe, ale zdecydowanie zalecane. jeśli nie zdefiniujesz żadnej wartości, karta standardowa zawierający nazwę Twojego dodatku, jest używana za każdym razem, gdy użytkownik porusza się na stronę główną.

Konfiguracja strony głównej

Dodatki do Google Workspace używają addOns.common.homepageTrigger polu do konfigurowania domyślnej (niekontekstowej) treści dodatku do domyślnej strony głównej dla wszystkich aplikacji hosta w dodatku manifestuj:

    {
      // ...
      "addOns": {
        // ...
        "common": {
          // ...
          "homepageTrigger": {
            "runFunction": "myFunction",
            "enabled": true
          }
        }
      }
    }
  • runFunction: nazwa funkcji Apps Script, Platforma dodatków do Google Workspace wywołuje w celu renderowania kart dodatków na stronę główną. Jest to funkcja aktywatora strony głównej. Ta funkcja musi kompilować i zwraca tablicę o wartości Card obiekty składające się na interfejs strony głównej. Jeśli zwróconych jest więcej niż jedna karta, aplikacja hostująca wyświetla nagłówki kart na liście, którą użytkownik może wybrać z (zobacz Zwracanie wielu kart).

  • enabled: określa, czy karty na stronie głównej mają być włączone dla tego zakresu. Ten jest opcjonalne i domyślnie ma wartość true. Ustawiam false przyczynę karty strony głównej, które mają być wyłączone dla wszystkich hostów (chyba że w tym przypadku zastąpione karty host; patrz niżej).

.

Oprócz typowej konfiguracji dostępne są też identycznie zorganizowane zastąpienia na hosta dostępne w config, o addOns.gmail.homepageTrigger, addOns.calendar.homepageTrigger, itd.

    {
      ...
      "addOns": {
        ...
        "common": {
          // By default, call 'buildHomePage' to render homepage content
          // in all hosts. Since calendar.homepageTrigger below overrides
          // this in Calendar and Drive and the homepageTrigger is disabled
          // for Gmail, this homepage function never executes.
          "homepageTrigger": { "runFunction": "buildHomePage" }
        },
        "calendar": {
          // Show customized homepage content for Calendar only.
          "homepageTrigger": { "runFunction": "buildCalendarHomepage" }
        },
        "drive": {
          // Show customized homepage content for Drive only.
          "homepageTrigger": { "runFunction": "buildDriveHomepage" }
        }
        "gmail": {
          // Disable homepage add-on content in Gmail.
          "homepageTrigger": { "enabled": false }
        },
        ...
      }
    }

Jest to odpowiednik tego fragmentu pliku manifestu:

    {
      ...
      "addOns": {
        ...
        "common": { /* ... */ }, // Omitted a default homepageTrigger specification.
        "calendar": {
          // Show customized homepage content for Calendar only.
          "homepageTrigger": { "runFunction": "myCalendarFunction" }
        },
        "drive": {
          // Show customized homepage content for Drive only.
          "homepageTrigger": { "runFunction": "myDriveFunction" }
        }
        "gmail": { /* ... */ },
        ...
      }
    }

Żadna z sekcji (homepageTrigger) nie jest wymagana. Jednak interfejs dla dodatek w danej usłudze hosta zależy od obecności dodatku odpowiednie pole manifestu oraz powiązane homepageTrigger Poniższy przykład pokazuje, które funkcje aktywujące dodatki są wykonywane (jeśli takie są) w celu utworzenia interfejsu strony głównej dla innego pliku manifestu konfiguracje:

Układ strony głównej

Obiekty zdarzeń na stronie głównej

Po wywołaniu opisana powyżej funkcja aktywatora strony głównej (runFunction) jest przekazano obiekt zdarzenia zawierający dane z kontekstu wywołania.

Obiekty zdarzeń na stronie głównej nie zawierają widżetów ani informacji kontekstowych. przekazywane informacje są ograniczone do następujących wspólny obiekt zdarzenia pola:

Więcej informacji znajdziesz w sekcji Obiekt zdarzenia.

Inne karty niezwiązane z kontekstem

Interfejs Twojego dodatku może zawierać dodatkowe karty niezwiązane z kontekstem, które nie są strony główne. Na przykład strona główna może mieć przycisk, który otwiera „Ustawienia” na której użytkownik może dostosować ustawienia dodatku (takie jak są w większości przypadków niezależne od kontekstu i dlatego nie są związane z kontekstem).

Karty niekontekstowe tworzą się tak jak inne karty. Jedyną różnicą jest to, jakie działanie lub zdarzenie generuje i wyświetla kartę. Zobacz Metody nawigacji , aby dowiedzieć się, jak tworzyć przejścia między kartami.