AddonSession.Builder

@PublicApi
public interface AddonSession.Builder



AddonSession의 빌더입니다. newSessionBuilder 페이지를 참고하세요.

요약

공개 메서드

abstract ListenableFuture<AddonSession>
begin(Context appContext)

부가기능 세션을 시작합니다.

abstract AddonSession.Builder
withCoDoing(CoDoingHandler coDoingHandler)

부가기능 세션에 공동 작업을 추가합니다.

abstract AddonSession.Builder
withCoWatching(CoWatchingHandler coWatchingHandler)

부가기능 세션에 공동 시청을 추가합니다.

abstract AddonSession.Builder
withCollaborationStartingState(
    CollaborationStartingState collaborationStartingState
)

세션의 CollaborationStartingState를 설정합니다.

abstract AddonSession.Builder

다른 참가자의 메타데이터 업데이트를 위한 리스너를 등록합니다.

abstract AddonSession.Builder
withParticipantMetadata(
    ParticipantMetadataHandler handler,
    byte[] metadata
)

이 참가자의 메타데이터를 설정하고 다른 참가자 업데이트용 리스너를 등록합니다.

공개 메서드

begin

abstract ListenableFuture<AddonSessionbegin(Context appContext)

부가기능 세션을 시작합니다. 이 메서드는 사용자가 부가기능 세션에 참여하고 싶다고 확인한 후에만 호출해야 합니다.

회의를 만들거나 진행 중인 회의에 연결하여 회의에 연결합니다. 참고:

  • 회의를 생성하면 처음에는 현재 사용자만 참여할 수 있습니다.
  • 회의 세부정보는 반환된 세션에서 getMeetingInfo를 통해 액세스할 수 있습니다.
  • 반환된 URL은 사용자에게 노출되어야 하며 의도한 부가기능 세션 그룹과 수동으로 공유되어야 합니다.
공동 시청 및 공동 작업 인스턴스는 각각 getCoWatchinggetCoDoing를 통해 액세스할 수 있습니다.

이 향후에 cancel를 호출하는 대신 완료될 때까지 실행하는 것은 권장되지 않습니다.

매개변수
Context appContext

SDK를 사용하는 애플리케이션의 getApplicationContext

반환 값
ListenableFuture<AddonSession>

부가기능 세션이 성공적으로 시작된 경우 적절한 유형의 AddonSession 인스턴스로 평가되는 ListenableFuture입니다. 그렇지 않은 경우 다른 AddonSession가 여전히 실행 중이면 (예: endSession가 호출되지 않음) IllegalStateException로 평가됩니다. 예상치 못한 오류가 발생하면 AddonException로 평가됩니다.

withCoDoing

abstract AddonSession.Builder withCoDoing(CoDoingHandler coDoingHandler)

부가기능 세션에 공동 작업을 추가합니다.

매개변수
CoDoingHandler coDoingHandler

공동 작업을 위한 콜백

반환 값
AddonSession.Builder

체이닝을 위한 또 다른 빌더 인스턴스

생성 값
java.lang.NullPointerException

coDoingHandler가 null인 경우

withCoWatching

abstract AddonSession.Builder withCoWatching(CoWatchingHandler coWatchingHandler)

부가기능 세션에 공동 시청을 추가합니다.

매개변수
CoWatchingHandler coWatchingHandler

공동 시청을 위한 콜백

반환 값
AddonSession.Builder

체이닝을 위한 또 다른 빌더 인스턴스

생성 값
java.lang.NullPointerException

coWatchingHandler가 null인 경우

withCollaborationStartingState

abstract AddonSession.Builder withCollaborationStartingState(
    CollaborationStartingState collaborationStartingState
)

세션의 CollaborationStartingState를 설정합니다.

나중에 updateCollaborationStartingState 또는 resetCollaborationStartingState를 호출하여 변경할 수 있습니다.

매개변수
CollaborationStartingState collaborationStartingState

데이터 CollaborationStartingState

생성 값
java.lang.NullPointerException

collaborationStartingState가 null인 경우

withParticipantMetadata

abstract AddonSession.Builder withParticipantMetadata(ParticipantMetadataHandler handler)

다른 참가자의 메타데이터 업데이트를 위한 리스너를 등록합니다.

로컬 참여자의 메타데이터는 처음에는 빈 값으로 설정되지만 나중에 updateParticipantMetadata를 호출하여 설정할 수 있습니다. 초깃값을 설정하려면 대신 withParticipantMetadata를 호출하세요.

매개변수
ParticipantMetadataHandler handler

업데이트될 때마다 최신 참여자 메타데이터 세트를 받기 위한 ParticipantMetadataHandler

생성 값
java.lang.NullPointerException

handler가 null인 경우

withParticipantMetadata

abstract AddonSession.Builder withParticipantMetadata(
    ParticipantMetadataHandler handler,
    byte[] metadata
)

이 참가자의 메타데이터를 설정하고 다른 참가자 업데이트용 리스너를 등록합니다.

이 메타데이터는 나중에 updateParticipantMetadata를 호출하여 변경할 수 있습니다.

인코딩된 메타데이터는 참여자당 MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES바이트로 제한됩니다.

매개변수
ParticipantMetadataHandler handler

업데이트될 때마다 최신 참여자 메타데이터 세트를 받기 위한 ParticipantMetadataHandler

byte[] metadata

로컬 참가자의 관련 메타데이터를 설명하는 메타데이터의 인코딩된 blob

생성 값
java.lang.IllegalArgumentException

제공된 메타데이터가 MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES바이트를 초과하는 경우

java.lang.NullPointerException

handler가 null인 경우