Tingkatkan pengalaman pengguna secara keseluruhan dengan mengikuti panduan ini untuk desain add-on.
Praktik terbaik umum
Sebaiknya gunakan praktik terbaik berikut untuk semua add-on yang Anda kembangkan.
Menentukan kepemilikan add-on sebelum memulai
Add-on ditentukan oleh project Apps Script, yang harus dimiliki oleh akun tertentu atau ditempatkan di drive bersama. Sebelum membuat kode add-on, tentukan akun yang harus memiliki project, dan akun yang bertindak sebagai penayangnya. Tentukan juga akun yang akan bertindak sebagai kolaborator, dan pastikan akun tersebut memiliki akses ke project skrip dan project Google Cloud terkait.
Memperluas Google Workspace, bukan mereplikasinya
Add-on dimaksudkan untuk memberikan kemampuan baru ke aplikasi Google Workspace yang diperluas, atau mengotomatiskan tugas yang kompleks. Add-on yang hanya mereplikasi fungsi yang sudah ada dalam aplikasi atau yang tidak melakukan peningkatan signifikan pada alur kerja kemungkinan tidak akan lulus peninjauan add-on untuk publikasi.
Membatasi cakupan
Saat menentukan cakupan secara eksplisit, selalu pilih kumpulan cakupan yang paling tidak permisif. Misalnya, jangan izinkan
add-on Anda meminta akses penuh ke Kalender
pengguna dengan cakupan
https://www.googleapis.com/auth/calendar
jika hanya memerlukan akses baca. Untuk akses hanya baca, gunakan cakupan https://www.googleapis.com/auth/calendar.readonly
.
Menghindari terlalu mengandalkan library
Menggunakan library Apps Script dapat menyebabkan add-on Anda berjalan lebih lambat daripada jika semua kode Apps Script berada dalam satu project skrip. Meskipun library Apps Script berfungsi di add-on, Anda mungkin mengalami penurunan performa jika menggunakannya. Hindari menyertakan library yang tidak diperlukan dalam project Anda, dan pertimbangkan cara untuk mengurangi ketergantungan add-on Anda pada library tersebut.
Latensi yang dijelaskan di atas hanya berlaku untuk project Apps Script yang digunakan sebagai library sisi server. Anda dapat menggunakan library JavaScript sisi klien seperti jQuery secara bebas tanpa mengalami latensi ini.
Praktik terbaik add-on Google Workspace
Praktik terbaik berikut hanya berlaku untuk add-on Google Workspace dan penggunaan Layanan kartu.
Hanya menggunakan beberapa kartu
Jika add-on menggunakan terlalu banyak kartu, konfigurasi navigasi akan menjadi rumit dan sulit dikelola.
Hindari keinginan untuk membuat lebih banyak kartu daripada yang diperlukan.
Menggunakan fungsi pembuatan widget
Saat menulis kode yang membuat
Card
atau objek UI kompleks lainnya,
pertimbangkan untuk menempatkan kode tersebut dalam fungsinya sendiri. Fungsi pembuatan ini hanya
harus mem-build objek dan menampilkannya. Hal ini memungkinkan Anda membuat ulang objek tersebut
dengan cepat setiap kali UI harus dimuat ulang. Jangan lupa untuk memanggil build()
setelah menggunakan
class builder di Layanan kartu.
Buat kartu tetap sederhana
Jika kartu tertentu memiliki terlalu banyak widget, kartu tersebut dapat memenuhi terlalu banyak layar dan menjadi kurang berguna. Meskipun bagian kartu besar dirender sebagai elemen UI yang dapat diciutkan, hal ini akan menyembunyikan informasi dari pengguna. Bertujuan untuk menyederhanakan add-on dan memberikan apa yang dibutuhkan pengguna saja, tidak lebih.
Menggunakan kartu error
Membuat kartu untuk kondisi error. Jika add-on Anda mengalami error, add-on akan menampilkan kartu dengan informasi error dan petunjuk cara memperbaikinya, jika memungkinkan. Misalnya, jika add-on Anda tidak dapat terhubung ke layanan non-Google karena otorisasi gagal, tampilkan kartu yang menyatakan hal ini dan minta pengguna untuk memverifikasi informasi akun yang digunakan.
Menulis pengujian dan pesan pengujian
Anda harus menguji semua add-on yang Anda buat secara menyeluruh. Buat fungsi pengujian yang membuat kartu dan widget menggunakan data pengujian, lalu verifikasi bahwa objek dibuat seperti yang diharapkan.
Saat menggunakan fungsi callback tindakan, Anda biasanya harus membuat objek respons. Anda dapat menggunakan pernyataan seperti berikut untuk memverifikasi bahwa respons dibuat dengan benar:
Logger.log(response.printJson());
Jalankan fungsi pengujian yang Anda buat langsung dari editor Apps Script menggunakan menu Run. Jika Anda memiliki add-on yang berfungsi, pastikan untuk menginstal versi yang tidak dipublikasikan agar dapat mengujinya.
Gunakan data pengujian yang sesuai untuk setiap aplikasi host yang
diperluas oleh add-on. Misalnya, jika
add-on memperluas Gmail, Anda mungkin memerlukan
beberapa email pengujian dan ID pesannya sehingga Anda dapat memastikan bahwa
add-on berfungsi seperti yang diharapkan saat diberi konten pesan
yang berbeda. Anda bisa mendapatkan ID pesan untuk pesan tertentu dengan mencantumkan
pesan menggunakan metode users.messages.list
Gmail API, atau dengan menggunakan layanan Gmail Apps Script.
Praktik terbaik konferensi kalender
Jika add-on Anda mengintegrasikan opsi konferensi kalender pihak ketiga ke dalam Google Kalender, ikuti praktik terbaik tambahan berikut:
Menjaga lampu onCreateFunction
Setiap
onCreateFunction
yang Anda tentukan dalam manifes dipanggil secara sinkron saat pengguna mencoba
membuat solusi konferensi dari jenis tersebut. Pastikan fungsi ini hanya melakukan
pekerjaan minimum yang diperlukan untuk membuat konferensi. Melakukan terlalu banyak hal dalam fungsi ini dapat menyebabkan pengalaman pengguna yang lambat untuk add-on Anda.
Menggunakan kolom ConferenceData
yang sesuai untuk data konferensi
Saat mem-build objek ConferenceData
, Anda dapat mengisinya dengan detail tentang konferensi (kode akses, nomor telepon, pin, URI, dll.). Pastikan untuk menggunakan kolom
EntryPoint
yang sesuai untuk
informasi ini. Jangan tempatkan detail ini di kolom catatan ConferenceData
.
Jangan menambahkan detail konferensi ke acara Kalender
Add-on Anda tidak perlu menambahkan informasi tentang konferensi pihak ketiga yang dibuat ke deskripsi acara Kalender. Kalender melakukannya secara otomatis jika diperlukan.