АддонКлиент

@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 .

Публичные методы

новыйSessionBuilder

abstract AddonSession.Builder newSessionBuilder(AddonSessionHandler handler)

Возвращает построитель для нового сеанса дополнения. Сеанс начнется только после вызова метода begin .

Чтобы начать сеанс, сначала подключите withCoWatching , withCoDoing или оба к этому конструктору.

Пример использования:

ListenableFuture<AddonSession> session = meetClient
    .newSessionBuilder(appContext, new AwesomeAddonSessionHandler())
    .withCoWatching(new AwesomeCoWatchingHandler())
    .withCoDoing(new AwesomeCoDoingHandler())
    .begin();
Чтобы использовать функциональность метаданных участников, вызовите withParticipantMetadata в цепочке компоновщика, чтобы указать начальное состояние и зарегистрировать прослушиватель для других участников. Например:
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

если какой-либо из предоставленных аргументов равен нулю

уведомитьаддонфаилуревент

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 для асинхронного выполнения. Если он не указан, результирующая логика может выполняться в потоке пользовательского интерфейса.

Броски
java.lang.IllegalStateException

Если этот метод вызывается перед вызовом unregisterMeetingStatusListener для уже зарегистрированного прослушивателя

отменить регистрациюMeetingStatusListener

abstract void unregisterMeetingStatusListener(Context appContext)

Отменяет регистрацию активного прослушивателя изменений MeetingStatus .

Параметры
Context appContext

значение getApplicationContext приложения, использующего SDK надстройки Meet.

Броски
java.lang.IllegalStateException

Если этот метод вызывается перед вызовом registerMeetingStatusListener .