ปรับปรุงประสบการณ์โดยรวมของผู้ใช้ด้วยการทำตามคำแนะนำเหล่านี้สำหรับการออกแบบส่วนเสริม
แนวทางปฏิบัติแนะนำโดยทั่วไป
เราขอแนะนำให้คุณใช้แนวทางปฏิบัติแนะนำต่อไปนี้สำหรับส่วนเสริมทั้งหมด ที่คุณพัฒนา
กำหนดความเป็นเจ้าของส่วนเสริมก่อนเริ่มต้น
ส่วนเสริมกำหนดโดยโปรเจ็กต์ Apps Script ซึ่งต้องเป็นของบัญชีที่เฉพาะเจาะจงหรืออยู่ในไดรฟ์ที่แชร์ ก่อนเขียนโค้ดส่วนเสริม ให้พิจารณาว่าบัญชีใดควรเป็นเจ้าของโปรเจ็กต์ และบัญชีใดทำหน้าที่เป็นผู้เผยแพร่ นอกจากนี้ ให้กำหนดว่าบัญชีใดจะทำหน้าที่เป็นผู้ทำงานร่วมกัน และตรวจสอบว่าบัญชีเหล่านั้นมีสิทธิ์เข้าถึงโปรเจ็กต์สคริปต์และโปรเจ็กต์ Google Cloud ที่เชื่อมโยงอยู่
ขยายการใช้งาน Google Workspace อย่าทำซ้ำ
ส่วนเสริมมีไว้เพื่อมอบความสามารถใหม่ๆ ให้กับแอปพลิเคชัน Google Workspace ที่ส่วนเสริมนั้นขยายการทำงาน หรือไม่ก็เพื่อทำให้งานที่ซับซ้อนเป็นอัตโนมัติ ส่วนเสริมที่ทำซ้ำฟังก์ชันการทำงานที่มีอยู่แล้วภายในแอปพลิเคชันหรือส่วนเสริมที่ไม่ได้ปรับปรุงเวิร์กโฟลว์อย่างมีนัยสำคัญไม่น่าจะผ่านการตรวจสอบส่วนเสริมเพื่อเผยแพร่
จำกัดขอบเขตให้แคบ
เมื่อกําหนดขอบเขต
อย่างชัดเจน ให้เลือกชุดขอบเขตที่เข้มงวดน้อยที่สุดเท่าที่จะเป็นไปได้เสมอ เช่น อย่าให้ส่วนเสริมขอสิทธิ์เข้าถึงแบบเต็มในปฏิทินของผู้ใช้ด้วยhttps://www.googleapis.com/auth/calendar
ขอบเขตหากต้องการสิทธิ์เข้าถึงแบบอ่านอย่างเดียว หากต้องการสิทธิ์การเข้าถึงระดับอ่านอย่างเดียว ให้ใช้ขอบเขต
https://www.googleapis.com/auth/calendar.readonly
หลีกเลี่ยงการพึ่งพาไลบรารีมากเกินไป
การใช้ไลบรารีของ Apps Script อาจทำให้ส่วนเสริมทำงานช้าลง กว่าในกรณีที่โค้ด Apps Script ทั้งหมดอยู่ในโปรเจ็กต์สคริปต์เดียว แม้ว่าไลบรารี Apps Script จะทำงานในส่วนเสริมได้ แต่คุณอาจพบว่าประสิทธิภาพลดลงหากใช้ไลบรารีเหล่านั้น หลีกเลี่ยงการรวมไลบรารีที่ไม่จำเป็นไว้ในโปรเจ็กต์ และพิจารณาวิธี ลดการพึ่งพาไลบรารีเหล่านั้นของส่วนเสริม
เวลาในการตอบสนองที่อธิบายไว้ข้างต้นมีผลกับโปรเจ็กต์ Apps Script ที่ใช้เป็นไลบรารีฝั่งเซิร์ฟเวอร์เท่านั้น คุณสามารถใช้ไลบรารี JavaScript ฝั่งไคลเอ็นต์ เช่น jQuery ได้อย่างอิสระโดยไม่ต้องพบกับเวลาในการตอบสนองนี้
แนวทางปฏิบัติแนะนำสำหรับส่วนเสริมของ Google Workspace
แนวทางปฏิบัติแนะนำต่อไปนี้ใช้กับส่วนเสริมของ Google Workspace และการใช้บริการการ์ดเท่านั้น
ใช้การ์ดเพียงไม่กี่ใบ
หากส่วนเสริมใช้การ์ดมากเกินไป การกำหนดค่าการนำทางจะซับซ้อนและจัดการได้ยาก
อย่าสร้างการ์ดมากเกินความจำเป็น
ใช้ฟังก์ชันการสร้างวิดเจ็ต
เมื่อเขียนโค้ดที่สร้าง
Card หรือออบเจ็กต์ UI ที่ซับซ้อนอื่นๆ
ให้พิจารณาใส่โค้ดนั้นไว้ในฟังก์ชันของตัวเอง ฟังก์ชันการสร้างนี้ควร
สร้างออบเจ็กต์และส่งคืนเท่านั้น ซึ่งจะช่วยให้คุณสร้างออบเจ็กต์นั้นใหม่ได้อย่างรวดเร็วทุกครั้งที่ต้องรีเฟรช UI อย่าลืมเรียกใช้ build() หลังจากใช้
คลาส Builder ในบริการการ์ด
ทำให้การ์ดเรียบง่าย
หากการ์ดมีวิดเจ็ตมากเกินไป วิดเจ็ตอาจกินพื้นที่หน้าจอมากเกินไปและ มีประโยชน์น้อยลง แม้ว่าส่วนการ์ดขนาดใหญ่จะแสดงเป็นองค์ประกอบ UI ที่ยุบได้ แต่การดำเนินการนี้จะซ่อนข้อมูลจากผู้ใช้ มุ่งมั่นที่จะปรับปรุงส่วนเสริมและมอบสิ่งที่ผู้ใช้ต้องการอย่างแท้จริงเท่านั้น
ใช้การ์ดข้อผิดพลาด
สร้างการ์ดสำหรับเงื่อนไขข้อผิดพลาด หากส่วนเสริม สร้างข้อผิดพลาด ส่วนเสริมควรแสดงการ์ดที่มีข้อมูลข้อผิดพลาดและ วิธีการแก้ไขหากเป็นไปได้ เช่น หากส่วนเสริมเชื่อมต่อกับบริการที่ไม่ใช่ของ Google ไม่ได้เนื่องจาก การให้สิทธิ์ล้มเหลว ให้แสดงการ์ดที่ระบุข้อความนี้และขอให้ผู้ใช้ยืนยัน ข้อมูลบัญชีที่ใช้
เขียนการทดสอบและข้อความทดสอบ
คุณควรทดสอบส่วนเสริมทั้งหมดที่สร้างอย่างละเอียด สร้างฟังก์ชันทดสอบ ที่สร้างการ์ดและวิดเจ็ตโดยใช้ข้อมูลทดสอบ แล้วตรวจสอบว่า มีการสร้างออบเจ็กต์ตามที่คาดไว้
เมื่อใช้ฟังก์ชัน การเรียกกลับการดำเนินการ คุณมักจะต้องสร้างออบเจ็กต์การตอบกลับ คุณใช้คำสั่งต่อไปนี้เพื่อ ยืนยันว่าคำตอบได้รับการสร้างอย่างถูกต้องได้
Logger.log(response.printJson());
เรียกใช้ฟังก์ชันทดสอบที่คุณสร้างจากโปรแกรมแก้ไข Apps Script โดยตรงโดยใช้เมนูเรียกใช้ เมื่อมีส่วนเสริมที่ใช้งานได้ แล้ว โปรดติดตั้งเวอร์ชันที่ยังไม่ได้เผยแพร่เพื่อให้ทดสอบได้
ใช้ข้อมูลทดสอบที่เหมาะสมกับแอปพลิเคชันโฮสต์แต่ละรายการที่ส่วนเสริมขยาย ตัวอย่างเช่น หากส่วนเสริมขยาย Gmail คุณอาจต้องมีอีเมลทดสอบ 2-3 ฉบับและรหัสข้อความของอีเมลเหล่านั้น เพื่อให้มั่นใจว่าส่วนเสริมจะทำงานตามที่คาดไว้เมื่อได้รับเนื้อหาข้อความที่แตกต่างกัน คุณรับรหัสข้อความสำหรับข้อความที่ต้องการได้โดยการแสดงรายการ
ข้อความโดยใช้เมธอด Gmail API
users.messages.list
หรือโดยใช้บริการ Gmail ของ Apps Script
แนวทางปฏิบัติแนะนำสำหรับการประชุมทางวิดีโอในปฏิทิน
หากส่วนเสริมผสานรวมตัวเลือกการประชุมผ่านวิดีโอในปฏิทินของบุคคลที่สามเข้ากับ Google ปฏิทิน ให้ทำตามแนวทางปฏิบัติแนะนำเพิ่มเติมต่อไปนี้
เปิดonCreateFunctionไว้
ระบบจะเรียกใช้
onCreateFunction
แต่ละรายการที่คุณกำหนดไว้ในไฟล์ Manifest แบบพร้อมกันเมื่อผู้ใช้พยายามสร้างโซลูชันการประชุมประเภทนั้น ตรวจสอบว่าฟังก์ชันเหล่านี้ทำงานเท่าที่จำเป็น
ขั้นต่ำในการสร้างการประชุมเท่านั้น การดำเนินการมากเกินไปในฟังก์ชันเหล่านี้อาจทำให้ผู้ใช้ได้รับประสบการณ์การใช้งานส่วนเสริมที่ช้า
ใช้ฟิลด์ ConferenceData ที่เหมาะสมสําหรับข้อมูลการประชุม
เมื่อสร้างออบเจ็กต์ ConferenceData
คุณจะป้อนรายละเอียดเกี่ยวกับการประชุม (รหัสการเข้าถึง หมายเลขโทรศัพท์ PIN, URI ฯลฯ) ได้ โปรดใช้ช่อง
EntryPoint ที่เกี่ยวข้องสำหรับ
ข้อมูลนี้ โปรดอย่าวางรายละเอียดเหล่านี้ในConferenceDataช่องหมายเหตุ
อย่าผนวกรายละเอียดการประชุมกับกิจกรรมในปฏิทิน
ส่วนเสริมไม่จำเป็นต้องเพิ่มข้อมูลเกี่ยวกับการประชุมของบุคคลที่สามที่สร้างขึ้นลงในคำอธิบายกิจกรรมในปฏิทิน ปฏิทินจะดำเนินการนี้โดยอัตโนมัติเมื่อจำเป็น