AddonClient

@PublicApi
public interface AddonClient



อินเทอร์เฟซหลักสำหรับการเริ่มและการหยุดเซสชันส่วนเสริม

หมายเหตุ: ใช้งานได้ครั้งละ 1 เซสชันเท่านั้น มิเช่นนั้น ListenableFuture ที่ begin แสดงผลจะแปลค่าด้วย เซสชันอาจสิ้นสุดเอง (เช่น ผู้ใช้ออกจากการประชุม) และโทรหา onSessionEnded หรือเซสชันอาจสิ้นสุดเมื่อโทรหา endSession

ตัวอย่างการใช้งาน:

class AwesomeAddonSessionHandler implements AddonSessionHandler {}

class AwesomeCoWatchingHandler implements CoWatchingHandler {}

public void registerStatusListener() {
  AddonClient meetClient = AddonClientFactory.getClient();
  meetClient.registerMeetingStatusListener(
      appContext,
      meetingStatus -> {
        switch (meetingStatus.status()) {
          case NO_MEETING:
            // User is not in a meeting currently.
            break;
          case MEETING:
            // User is in a meeting, check if they want to start an add-on session.
            showStartAddonSessionDialog();
            break;
          case ADDON_SESSION:
            // User is in a meeting that already hosts an add-on session, check if they want
            // to join the ongoing session.
            showJoinAddonSessionDialog();
            break;
        }
      },
      Optional.empty());
}

public ListenableFuture<AddonClient> initialSetup() {
  AddonClient meetClient = AddonClientFactory.getClient();
  return meetClient
      .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
      .withCoWatching(new AwesomeCoWatchingHandler())
      .begin();
}

สรุป

ประเภทที่ซ้อนกัน

แสดงเหตุการณ์การทำงานล้มเหลวที่เกิดขึ้นก่อน ระหว่าง หรือหลังเซสชันส่วนเสริม

วิธีการสาธารณะ

abstract AddonSession.Builder

แสดงเครื่องมือสร้างสำหรับเซสชันส่วนเสริมใหม่

abstract void
notifyAddonFailureEvent(
    Context appContext,
    AddonClient.AddonFailureEventType failureEventType
)

แจ้ง Meet เกี่ยวกับเหตุการณ์ที่ส่วนเสริมล้มเหลว

abstract void
registerMeetingStatusListener(
    Context appContext,
    MeetingStatusListener listener,
    Optional<Handler> handler
)

ลงทะเบียนผู้ฟังเพื่อรับการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงสถานะของการประชุมและเซสชันส่วนเสริม

abstract void

ยกเลิกการลงทะเบียน Listener ที่ใช้งานอยู่สำหรับการเปลี่ยนแปลง MeetingStatus รายการ

วิธีการสาธารณะ

newSessionBuilder

abstract AddonSession.Builder newSessionBuilder(AddonSessionHandler handler)

แสดงเครื่องมือสร้างสำหรับเซสชันส่วนเสริมใหม่ เซสชันจะเริ่มขึ้นเมื่อมีการเรียก begin เท่านั้น

หากต้องการเริ่มเซสชัน ให้เชน withCoWatching, withCoDoing หรือทั้ง 2 อย่างมายังเครื่องมือสร้างนี้ก่อน

ตัวอย่างการใช้งาน:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
หากต้องการใช้ประโยชน์จากฟังก์ชันข้อมูลเมตาของผู้เข้าร่วม ให้เรียกใช้ guestMetadata ในเชนเครื่องมือสร้างเพื่อระบุสถานะเริ่มต้นและลงทะเบียน Listener สำหรับผู้เข้าร่วมคนอื่นๆ ตัวอย่างเช่น
ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withParticipantMetadata(new AwesomeMetadataHandler(), myMetadataBytes)
    .begin(appContext);
ดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีเริ่มต้นเซสชันใน begin
พารามิเตอร์
AddonSessionHandler handler

โค้ดเรียกกลับที่ใช้กับเซสชันส่วนเสริมทั้งหมด

การคืนสินค้า
AddonSession.Builder

เครื่องมือสร้างสำหรับอินสแตนซ์ AddonSession ใหม่

การขว้าง
java.lang.NullPointerException

ถ้าอาร์กิวเมนต์ใดที่ระบุเป็นค่าว่าง

notifyAddonFailureEvent

abstract void notifyAddonFailureEvent(
    Context appContext,
    AddonClient.AddonFailureEventType failureEventType
)

แจ้ง Meet เกี่ยวกับเหตุการณ์ที่ส่วนเสริมล้มเหลว

พารามิเตอร์
Context appContext

ค่า getApplicationContext ของแอปพลิเคชันที่ใช้ SDK ของส่วนเสริม Meet

AddonClient.AddonFailureEventType failureEventType

ประเภทของเหตุการณ์ล้มเหลวที่พบก่อน ระหว่าง หรือหลังเซสชันการแชร์สด

การขว้าง
java.lang.NullPointerException

ถ้าอาร์กิวเมนต์ใดที่ระบุเป็นค่าว่าง

registerMeetingStatusListener

abstract void registerMeetingStatusListener(
    Context appContext,
    MeetingStatusListener listener,
    Optional<Handler> handler
)

ลงทะเบียนผู้ฟังเพื่อรับการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงสถานะของการประชุมและเซสชันส่วนเสริม

ผู้ฟังที่ลงทะเบียนจะได้รับการแจ้งเตือนเนื่องจากสถานะอย่างใดอย่างหนึ่งต่อไปนี้

  • MEETING - มีการประชุมที่ใช้งานอยู่ในแอป Meet
  • ADDON_SESSION - มีเซสชันส่วนเสริมที่ใช้งานอยู่ ซึ่งจะเป็นไปได้ก็ต่อเมื่อมีการประชุมที่ดำเนินอยู่ด้วยเช่นกัน
  • NO_MEETING - ไม่มีเซสชันการประชุมหรือส่วนเสริม
พารามิเตอร์
Context appContext

ค่า getApplicationContext ของแอปพลิเคชันที่ใช้ SDK ของส่วนเสริม Meet

MeetingStatusListener listener

MeetingStatusListener ที่จะได้รับการแจ้งเตือนการเปลี่ยนสถานะ

Optional<Handler> handler

Optional ของ Handler สำหรับการดำเนินการแบบไม่พร้อมกัน หากไม่ระบุ ตรรกะที่เป็นผลลัพธ์อาจทำงานในเธรด UI

การขว้าง
java.lang.IllegalStateException

หากมีการเรียกใช้วิธีนี้ก่อนเรียกใช้ unregisterMeetingStatusListener สำหรับ Listener ที่ลงทะเบียนแล้ว

unregisterMeetingStatusListener

abstract void unregisterMeetingStatusListener(Context appContext)

ยกเลิกการลงทะเบียน Listener ที่ใช้งานอยู่สำหรับการเปลี่ยนแปลง MeetingStatus รายการ

พารามิเตอร์
Context appContext

ค่า getApplicationContext ของแอปพลิเคชันที่ใช้ SDK ของส่วนเสริม Meet

การขว้าง
java.lang.IllegalStateException

หากมีการเรียกใช้วิธีนี้ก่อนเรียกใช้ registerMeetingStatusListener