AddonSession

@PublicApi
public interface AddonSession



插件会话。

包含所有插件会话通用的方法。如需访问“一起看”和“共同处理”,请分别调用 getCoWatchinggetCoDoing

摘要

嵌套类型

AddonSession 的构建器。

公共方法

abstract ListenableFuture<Void>

结束插件会话并断开与 Meet 应用的连接。

abstract void

退出已暂停状态。

abstract CoDoingClient

返回 CoDoingClient 实例。

abstract CoWatchingClient

返回 CoWatchingClient 实例。

abstract AddonMeetingInfo

返回有关已连接会议的信息,例如会议网址。

abstract boolean

如果会话已结束,则返回 true

abstract boolean

指明会话是否已暂停。

abstract void

重置插件的启动状态。

abstract void

暂停插件会话。

abstract void

更新插件的启动状态。

abstract void
updateParticipantMetadata(byte[] metadata)

更新此参与者的元数据。

公共方法

endSession

abstract ListenableFuture<VoidendSession()

结束插件会话并断开与 Meet 应用的连接。这不会强制 Meet 结束会议,也不会导致用户退出会议。

如果会话已经结束,则这是空操作,不会引发异常。

返回
ListenableFuture<Void>

ListenableFuture(评估成功)或 AddonException(如果出现意外错误)

endSuspension

abstract void endSuspension()

退出已暂停状态。插件应用再次能够发送和接收更新。

如果该 activity 未处于挂起状态,则此操作为空操作。

抛出
java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。

getCoDoing

abstract CoDoingClient getCoDoing()

返回 CoDoingClient 实例。

抛出
java.lang.IllegalStateException

如果会话是在未调用 withCoDoing 的情况下构建的,或者会话已结束

getCoWatching

abstract CoWatchingClient getCoWatching()

返回 CoWatchingClient 实例。

抛出
java.lang.IllegalStateException

如果会话是在未调用 withCoWatching 的情况下构建的,或者会话已结束

getMeetingInfo

abstract AddonMeetingInfo getMeetingInfo()

返回有关已连接会议的信息,例如会议网址。

抛出
java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。

isSessionEnded

abstract boolean isSessionEnded()

如果会话已结束,则返回 true。这可能是由于对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。

抛出
java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于外部原因(将通过 onSessionEnded 显示)所致

isSuspended

abstract boolean isSuspended()

指明会话是否已暂停。请参阅suspendendSuspension

抛出
java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。

resetCollaborationStartingState

abstract void resetCollaborationStartingState()

重置插件的启动状态。这将清除其他参与者之前收到的起始状态。启动状态只能由发起方重置。

suspend

abstract void suspend()

暂停插件会话。这不会断开与 Meet 应用的连接。这会使 SDK 避免向您的 CoDoingHandlerCoWatchingHandler 发送更新,并导致 SDK 忽略用于通知通话的调用和用于更新全局状态的调用。

如果会话已暂停,则此为空操作。

例如,您可以选择在以下情况下调用 suspend:用户(但不是每个用户)因观看广告的播放中断、应用进入后台等情况。

抛出
java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。

updateCollaborationStartingState

abstract void updateCollaborationStartingState(
    CollaborationStartingState startingState
)

更新插件的启动状态。其他参与者在接受协作邀请后会收到此消息。起始状态只能由发起方更新。

参数
CollaborationStartingState startingState

插件的起始状态

updateParticipantMetadata

abstract void updateParticipantMetadata(byte[] metadata)

更新此参与者的元数据。

如需从其他参与者接收元数据,必须在构建 AddonSession 时调用 withPARTICIPANTMetadata 来注册处理程序。

每个参与者的编码元数据上限为 MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES 个字节。

参数
byte[] metadata

元数据的编码 blob,用于描述本地参与者的相关元数据

抛出
java.lang.IllegalArgumentException

如果提供的元数据超过 MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES 字节

java.lang.IllegalStateException

如果会话已结束这可能是对 endSession 的显式调用,也可能是由于通过 onSessionEnded 显示的外部原因导致的。