AddonClient

@PublicApi
public interface AddonClient



رابط اصلی برای شروع و توقف یک جلسه افزودنی.

توجه: فقط یک جلسه ممکن است در هر زمان فعال باشد، در غیر این صورت 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

Meet را از یک رویداد شکست افزونه مطلع می کند.

abstract void

یک شنونده را ثبت می کند تا از تغییرات در وضعیت جلسات و جلسات اضافی مطلع شود.

abstract void

یک شنونده فعال را برای تغییرات MeetingStatus لغو ثبت می کند.

روش های عمومی

newSessionBuilder

abstract AddonSession.Builder newSessionBuilder(AddonSessionHandler handler)

سازنده را برای یک جلسه افزودنی جدید برمی گرداند. جلسه فقط پس از begin شروع خواهد شد.

برای شروع یک جلسه، ابتدا withCoWatching ، withCoDoing یا هر دو روی این سازنده زنجیره بزنید.

استفاده از نمونه:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
برای استفاده از عملکرد فراداده شرکت‌کننده، باParticipantMetadata در زنجیره سازنده تماس بگیرید تا وضعیت اولیه را مشخص کنید و یک شنونده برای سایر شرکت‌کنندگان ثبت کنید. به عنوان مثال:
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 برای شنونده ای که قبلاً ثبت شده است فراخوانی شود

لغو ثبت نامMeetingStatusListener

abstract void unregisterMeetingStatusListener(Context appContext)

یک شنونده فعال را برای تغییرات MeetingStatus لغو ثبت می کند.

مولفه های
Context appContext

مقدار getApplicationContext برنامه‌ای که از SDK افزونه Meet استفاده می‌کند

پرتاب می کند
java.lang.IllegalStateException

اگر این متد قبل از فراخوانی registerMeetingStatusListener فراخوانی شود.