Ana sayfalar, bir veya daha fazla bağlam dışı kart tanımlama olanağı sağlayan yeni bir Google Workspace eklentisi özelliğidir. Bağlam dışı kartlar, kullanıcı belirli bir bağlamın dışındayken (ör. Gmail gelen kutusunu görüntülerken ancak bir iletiyi veya taslağı açmamışken) kullanıcı arayüzünü göstermek için kullanılır.
Ana sayfalar, hızlı erişim yan panelindeki (Keep, Takvim ve Görevler) Google uygulamalarında olduğu gibi bağlam dışı içerik göstermenize olanak tanır. Ana sayfalar, kullanıcılar eklentinizi ilk kez açtığında başlangıç noktası olarak da kullanılabilir ve yeni kullanıcılara eklentinizle nasıl etkileşim kuracaklarını öğretmek için faydalıdır.
Proje manifestinizde belirterek ve bir veya daha fazla homepageTrigger işlevi uygulayarak eklentiniz için bir ana sayfa tanımlayabilirsiniz (bkz. Ana sayfa yapılandırması).
Eklentinizin genişlettiği her ana makine uygulaması için bir tane olmak üzere birden fazla ana sayfanız olabilir. Ayrıca, özel bir ana sayfa belirtmediğiniz ana makinelerde kullanılan tek bir ortak varsayılan ana sayfa tanımlamaya da karar verebilirsiniz.
Aşağıdaki koşullardan biri karşılandığında eklenti ana sayfanız gösterilir:
- Eklenti, ana makinede ilk kez açıldığında (yetkilendirmeden sonra).
- Kullanıcı, eklenti açıkken bağlamsal bir bağlamdan bağlamsal olmayan bir bağlama geçtiğinde. Örneğin, bir Takvim etkinliğini düzenlemekten ana Takvim'e kadar.
- Kullanıcı, diğer tüm kartları dahili yığınlardan çıkarmak için yeterli sayıda geri düğmesini tıkladığında.
- Bağlam dışı bir karttaki kullanıcı arayüzü etkileşimi
Navigation.popToRoot()çağrısına neden olduğunda.
Ana sayfa tasarlamak zorunlu olmasa da önemle tavsiye edilir. Ana sayfa tanımlamazsanız kullanıcı ana sayfaya gitmek istediğinde eklenti adınızı içeren genel bir kart kullanılır.
Ana sayfa yapılandırması
Google Workspace eklentileri, eklenti manifestindeki tüm ana makine uygulamaları için varsayılan ana sayfa (bağlam dışı) eklenti içeriğini yapılandırmak üzere addOns.common.homepageTrigger alanını kullanır:
{
// ...
"addOns": {
// ...
"common": {
// ...
"homepageTrigger": {
"runFunction": "myFunction",
"enabled": true
}
}
}
}
runFunction: Google Workspace eklenti çerçevesinin, ana sayfa eklenti kartlarını oluşturmak için çağırdığı Apps Komut Dosyası işlevinin adı. Bu işlev, ana sayfa tetikleme işlevidir. Bu işlev, ana sayfa kullanıcı arayüzünü oluşturanCardnesnelerden oluşan bir dizi oluşturup döndürmelidir. Birden fazla kart döndürülürse ana uygulama, kart başlıklarını kullanıcının seçebileceği bir listede gösterir (bkz. Birden fazla kart döndürme).enabled: Bu kapsam için ana sayfa kartlarının etkinleştirilip etkinleştirilmeyeceği. Bu alan isteğe bağlıdır ve varsayılan olaraktruedeğerine ayarlanır. Bu ayarınfalseolarak belirlenmesi, ana sayfa kartlarının tüm ana makinelerde devre dışı bırakılmasına neden olur (ilgili ana makine için geçersiz kılınmadığı sürece; aşağıya bakın).
Ortak yapılandırmaya ek olarak, her ana makine uygulamasının yapılandırmasında, addOns.gmail.homepageTrigger, addOns.calendar.homepageTrigger vb. yerlerde ana makine başına aynı şekilde yapılandırılmış geçersiz kılmalar da mevcuttur:
{
...
"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 }
},
...
}
}
Bunun, aşağıdaki manifest alıntısına eşdeğer olduğunu unutmayın:
{
...
"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": { /* ... */ },
...
}
}
homepageTrigger bölümlerinin hiçbiri zorunlu değildir. Ancak, belirli bir ana makine ürününde eklenti için gösterilen kullanıcı arayüzü, ilgili manifest alanının varlığına ve ilişkili bir homepageTrigger olup olmadığına bağlıdır. Aşağıdaki örnekte, farklı manifest yapılandırmaları için ana sayfa kullanıcı arayüzü oluşturmak üzere hangi eklenti tetikleyici işlevlerinin (varsa) yürütüldüğü gösterilmektedir:

Ana sayfa etkinlik nesneleri
Yukarıda açıklanan ana sayfa tetikleyici işlevi (runFunction) çağrıldığında, çağırma bağlamındaki verileri içeren bir event object iletilir.
Ana sayfa etkinlik nesneleri, widget veya bağlamsal bilgiler içermez. Geçirilen bilgiler aşağıdaki ortak etkinlik nesnesi alanlarıyla sınırlıdır:
commonEventObject.clientPlatformcommonEventObject.hostAppcommonEventObject.userLocalevecommonEventObject.userTimezone(ancak kısıtlama bilgileri için Kullanıcı yerel ayarına ve saat dilimine erişme başlıklı makaleyi inceleyin).
Daha fazla bilgi için Etkinlik nesnesi başlıklı makaleyi inceleyin.
Bağlamla ilgili olmayan diğer kartlar
Eklenti kullanıcı arayüzünüz, ana sayfalar olmayan ek bağlam dışı kartlar içerebilir. Örneğin, ana sayfanızda, kullanıcının eklenti ayarlarını yapabileceği bir "Ayarlar" kartı açan bir düğme olabilir (bu tür ayarlar çoğu durumda bağlamdan bağımsızdır ve bu nedenle bağlamsal değildir).
Bağlamsal olmayan kartlar diğer kartlar gibi oluşturulur. Aralarındaki tek fark, kartı hangi işlemin veya etkinliğin oluşturup gösterdiğidir. Kartlar arasında geçiş oluşturma hakkında ayrıntılı bilgi için Navigasyon yöntemleri başlıklı makaleyi inceleyin.