AddonClient

@PublicApi
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();
}

خلاصه

انواع تو در تو

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

توابع عمومی

AddonSession.Builder !

سازنده را برای یک جلسه افزودنی جدید برمی گرداند.

Unit
notifyAddonFailureEvent (
appContext: Context !,
failureEventType: AddonClient.AddonFailureEventType !
)

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

Unit
registerMeetingStatusListener (
appContext: Context !,
listener: MeetingStatusListener !,
handler: Optional < Handler !>!
)

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

Unit

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

توابع عمومی

newSessionBuilder

fun newSessionBuilder(handler: AddonSessionHandler!): AddonSession.Builder!

سازنده را برای یک جلسه افزودنی جدید برمی گرداند. جلسه فقط پس از 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 کنید.
مولفه های
handler: AddonSessionHandler !

تماس‌هایی که برای همه جلسات افزودنی اعمال می‌شوند

برمی گرداند
AddonSession.Builder !

سازنده برای یک نمونه AddonSession جدید

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

اگر هر یک از آرگومان های ارائه شده تهی باشد

notifyAddonFailureEvent

fun notifyAddonFailureEvent(
    appContext: Context!,
    failureEventType: AddonClient.AddonFailureEventType!
): Unit

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

مولفه های
appContext: Context !

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

failureEventType: AddonClient.AddonFailureEventType !

نوع رویداد شکستی که قبل، حین یا بعد از جلسه اشتراک‌گذاری زنده با آن مواجه می‌شود

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

اگر هر یک از آرگومان های ارائه شده تهی باشد

registerMeetingStatusListener

fun registerMeetingStatusListener(
    appContext: Context!,
    listener: MeetingStatusListener!,
    handler: Optional<Handler!>!
): Unit

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

شنونده ثبت نام شده به دلیل یکی از وضعیت های زیر مطلع خواهد شد:

  • MEETING - یک جلسه فعال در برنامه Meet وجود دارد
  • ADDON_SESSION - یک جلسه افزودنی فعال وجود دارد. این تنها در صورتی امکان پذیر است که یک جلسه فعال نیز وجود داشته باشد.
  • NO_MEETING - بدون جلسه یا جلسه اضافی
مولفه های
appContext: Context !

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

listener: MeetingStatusListener !

MeetingStatusListener از تغییرات وضعیت مطلع شود

handler: Optional < Handler !>!

Optional از Handler برای اجرای ناهمزمان. اگر یکی ارائه نشود، منطق حاصل ممکن است روی رشته UI اجرا شود.

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

اگر این روش قبل از فراخوانی unregisterMeetingStatusListener برای شنونده ای که قبلاً ثبت شده است فراخوانی شود

لغو ثبت نامMeetingStatusListener

fun unregisterMeetingStatusListener(appContext: Context!): Unit

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

مولفه های
appContext: Context !

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

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

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