หน้าแรก

หน้าแรกคือฟีเจอร์ส่วนเสริมใหม่ของ Google Workspace ที่ช่วยให้คุณกำหนดการ์ดที่ไม่ใช่บริบทได้อย่างน้อย 1 ใบ การ์ดที่ไม่ใช่บริบทจะใช้เพื่อแสดงอินเทอร์เฟซผู้ใช้เมื่อผู้ใช้ นอกเหนือบริบทที่ระบุ เช่น เมื่อผู้ใช้กำลังดูกล่องจดหมาย Gmail แต่ยังไม่ได้เปิดข้อความหรือฉบับร่าง

หน้าแรกช่วยให้คุณสามารถแสดง เนื้อหาที่ไม่ใช่บริบท แอป Google ใน แผงด้านข้างแบบเข้าถึงด่วน (Keep, ปฏิทิน และ Tasks) หน้าแรกยังเป็นจุดเริ่มต้นเริ่มต้นอีกด้วย ตำแหน่งที่ผู้ใช้เปิดส่วนเสริมเป็นครั้งแรก และมีประโยชน์ต่อการสอน วิธีโต้ตอบกับส่วนเสริมของคุณให้กับผู้ใช้ใหม่

คุณกำหนดหน้าแรกสำหรับส่วนเสริมได้โดยระบุในโปรเจ็กต์ ไฟล์ Manifest และใช้ฟังก์ชัน homepageTrigger อย่างน้อย 1 รายการ (ดู การกำหนดค่าหน้าแรก)

คุณมีหน้าแรกได้หลายหน้าแรก โดยแต่ละหน้าแรกจะมีแอปพลิเคชันหนึ่งสำหรับแต่ละแอปพลิเคชันโฮสต์ที่ส่วนเสริมของคุณ ขยาย นอกจากนี้คุณยังสามารถเลือกกำหนดหน้าแรกเริ่มต้นที่ใช้กันทั่วไปซึ่งมีลักษณะดังนี้ ที่ใช้ในโฮสต์ที่คุณยังไม่ได้ระบุหน้าแรกที่กำหนดเอง

หน้าแรกของส่วนเสริมจะปรากฏขึ้นเมื่อเป็นไปตามเงื่อนไขข้อใดข้อหนึ่งต่อไปนี้

  • เมื่อเปิดส่วนเสริมครั้งแรกในโฮสต์ (หลังจากการให้สิทธิ์)
  • เมื่อผู้ใช้เปลี่ยนจากบริบทตามบริบทไปยังบริบทที่ไม่ใช่บริบท ขณะที่ส่วนเสริมเปิดอยู่ ตัวอย่างเช่น จากการแก้ไขกิจกรรมในปฏิทินไปยัง ปฏิทินหลัก
  • เมื่อผู้ใช้คลิกปุ่มย้อนกลับมากจนหลายครั้ง นำการ์ดอื่นๆ ทั้งหมดออกจากสแต็กภายใน
  • เมื่อการโต้ตอบของ UI ในการ์ดที่ไม่ใช่ตามบริบทส่งผลให้เกิด Navigation.popToRoot() การโทร

การออกแบบหน้าแรกไม่ได้บังคับ แต่ขอแนะนำให้ทำ หากคุณไม่ได้ระบุการ์ดทั่วไป ที่มีชื่อส่วนเสริมของคุณอยู่ด้วยทุกครั้งที่ผู้ใช้ไปยังส่วนต่างๆ ไปยังหน้าแรก

การกำหนดค่าหน้าแรก

ส่วนเสริมของ Google Workspace ใช้ addOns.common.homepageTrigger ช่องเพื่อกำหนดค่าเนื้อหาส่วนเสริมเริ่มต้น (ไม่ใช่บริบท) สำหรับ แอปพลิเคชันโฮสต์ทั้งหมดในส่วนเสริม ไฟล์ Manifest:

    {
      // ...
      "addOns": {
        // ...
        "common": {
          // ...
          "homepageTrigger": {
            "runFunction": "myFunction",
            "enabled": true
          }
        }
      }
    }
  • runFunction: ชื่อของฟังก์ชัน Apps Script ที่การเรียก เฟรมเวิร์กส่วนเสริมของ Google Workspace จะเรียกใช้แสดงผลการ์ดส่วนเสริมในหน้าแรก ฟังก์ชันนี้คือฟังก์ชันทริกเกอร์หน้าแรก ฟังก์ชันนี้ต้องสร้าง และแสดงอาร์เรย์ของ Card ที่ประกอบขึ้นเป็น UI ของหน้าแรก หากมีการแสดงผลบัตรมากกว่า 1 ใบ ระบบจะ แอปพลิเคชันโฮสต์จะแสดงส่วนหัวของการ์ดในรายการที่ผู้ใช้สามารถเลือกได้ จาก (โปรดดู ส่งคืนบัตรหลายใบ)

  • enabled: ควรเปิดใช้การ์ดหน้าแรกสำหรับขอบเขตนี้หรือไม่ ช่วงเวลานี้ ช่องนี้ไม่บังคับ และมีค่าเริ่มต้นเป็น true การตั้งค่านี้เป็นสาเหตุ false รายการ การ์ดหน้าแรกที่จะปิดใช้สำหรับโฮสต์ทั้งหมด (เว้นแต่จะมีการลบล้าง host; ดูด้านล่าง)

นอกจากการกำหนดค่าทั่วไปแล้ว ยังมี การแทนที่ต่อโฮสต์ที่มีโครงสร้างเหมือนกันที่มีอยู่ในแอปพลิเคชันโฮสต์แต่ละรายการ การกำหนดค่า ที่ addOns.gmail.homepageTrigger, addOns.calendar.homepageTrigger และอื่นๆ เช่น

    {
      ...
      "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 }
        },
        ...
      }
    }

โปรดทราบว่าสิ่งนี้เทียบเท่ากับข้อความ Manifest ที่ตัดตอนมาต่อไปนี้

    {
      ...
      "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 แต่ UI ที่แสดงสำหรับ ส่วนเสริมในผลิตภัณฑ์โฮสต์ที่กำหนดจะขึ้นอยู่กับการมี ไฟล์ Manifest ที่เกี่ยวข้องหรือไม่ และมีลิงก์ homepageTrigger ตัวอย่างต่อไปนี้แสดงฟังก์ชันทริกเกอร์ของส่วนเสริม ถูกดำเนินการ (ถ้ามี) เพื่อสร้าง UI ของหน้าแรกสำหรับไฟล์ Manifest ต่างๆ การกำหนดค่า:

ขั้นตอนของหน้าแรก

ออบเจ็กต์เหตุการณ์ในหน้าแรก

เมื่อเรียกใช้ ฟังก์ชันทริกเกอร์หน้าแรก (runFunction) ที่อธิบายไว้ข้างต้นจะเป็น ส่งออบเจ็กต์เหตุการณ์ ที่มีข้อมูลจากบริบทการเรียกใช้

ออบเจ็กต์เหตุการณ์ในหน้าแรกจะไม่มีวิดเจ็ตหรือข้อมูลบริบท เวลา ข้อมูลที่ส่งจะจำกัดไว้เพียง ออบเจ็กต์เหตุการณ์ทั่วไป ฟิลด์:

ดูรายละเอียดเพิ่มเติมในออบเจ็กต์เหตุการณ์

การ์ดที่ไม่ใช่บริบทอื่นๆ

UI ของส่วนเสริมสามารถประกอบด้วยการ์ดอื่นๆ ที่ไม่ใช่การ์ดตามบริบท หน้าแรก ตัวอย่างเช่น หน้าแรกของคุณอาจมีปุ่มที่เปิด "การตั้งค่า" ที่ผู้ใช้สามารถปรับการตั้งค่าส่วนเสริม (การตั้งค่าดังกล่าว) ในกรณีส่วนใหญ่ จะไม่ขึ้นอยู่กับบริบท ดังนั้นจึงไม่ใช่บริบท)

การ์ดที่ไม่ใช่บริบทจะสร้างขึ้นเหมือนกับการ์ดอื่นๆ ความแตกต่างเพียงอย่างเดียวคือ การดำเนินการหรือเหตุการณ์ที่สร้างและแสดงการ์ด โปรดดู วิธีไปยังส่วนต่างๆ เพื่อดูรายละเอียดเกี่ยวกับวิธีสร้างการเปลี่ยนระหว่างการ์ด