AddonClient

@PublicApi
interface AddonClient


부가기능 세션을 시작하고 중지하기 위한 기본 인터페이스입니다.

참고: 한 번에 하나의 세션만 활성화할 수 있으며, 그렇지 않으면 begin에서 반환한 ListenableFuture가 . 세션이 자체적으로 종료 (예: 사용자가 회의를 나감)하고 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();
참여자 메타데이터 기능을 활용하려면 빌더 체인에서 withparticipantMetadata를 호출하여 초기 상태를 지정하고 다른 참여자를 위한 리스너를 등록하세요. 예:
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

제공된 인수가 null인 경우

notifyAddonFailureEvent

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

Meet에 부가기능 실패 이벤트를 알립니다.

매개변수
appContext: Context!

Meet 부가기능의 SDK를 사용하는 애플리케이션의 getApplicationContext

failureEventType: AddonClient.AddonFailureEventType!

실시간 공유 세션 이전, 도중 또는 이후에 발생한 오류 이벤트 유형

생성 값
java.lang.NullPointerException

제공된 인수가 null인 경우

registerMeetingStatusListener

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

회의 및 부가기능 세션 상태 변경 알림을 받도록 리스너를 등록합니다.

다음 상태 중 하나로 인해 등록된 리스너에 알림이 전송됩니다.

  • MEETING: Meet 앱에 진행 중인 회의가 있습니다.
  • ADDON_SESSION - 활성 상태인 부가기능 세션이 있습니다. 진행 중인 회의가 있는 경우에만 가능합니다.
  • NO_MEETING - 회의 또는 부가기능 세션 없음
매개변수
appContext: Context!

Meet 부가기능의 SDK를 사용하는 애플리케이션의 getApplicationContext

listener: MeetingStatusListener!

상태 변경에 관한 알림을 받을 MeetingStatusListener

handler: Optional<Handler!>!

비동기 실행을 위한 HandlerOptional 이 중 하나를 제공하지 않으면 결과 로직이 UI 스레드에서 실행될 수 있습니다.

생성 값
java.lang.IllegalStateException

이미 등록된 리스너에 unregisterMeetingStatusListener를 호출하기 전에 이 메서드가 호출되는 경우

unregisterMeetingStatusListener

fun unregisterMeetingStatusListener(appContext: Context!): Unit

MeetingStatus 변경사항에 대한 활성 리스너의 등록을 취소합니다.

매개변수
appContext: Context!

Meet 부가기능의 SDK를 사용하는 애플리케이션의 getApplicationContext

생성 값
java.lang.IllegalStateException

registerMeetingStatusListener를 호출하기 전에 이 메서드가 호출되는 경우