cast. framework. CastReceiverContext
管理底层库的加载并初始化底层 Cast 接收器 SDK。
- 抛出
-
non-null Error如果 MediaElement 不是在文档正文中创建的。如果创建了多个媒体元素,开发者应将“castMediaElement”类设置为 CAF 接收器将使用的其中一个元素。
方法
getInstance
getInstance() 会返回 cast.framework.CastReceiverContext
返回 CastReceiverContext 单例实例。
- 返回
-
non-null cast.framework.CastReceiverContext
addCustomMessageListener
addCustomMessageListener(namespace, listener)
为自定义消息渠道设置消息监听器。一个命名空间可以有多个监听器。
参数 |
|
|---|---|
|
命名空间 |
字符串 命名空间。请注意,有效的命名空间必须以字符串“urn:x-cast:”为前缀。 |
|
监听器 |
function(non-null cast.framework.system.Message) |
- 抛出
-
Error如果系统未准备就绪,或者此应用不支持该命名空间。
addEventListener
addEventListener(type, handler)
向 Cast 系统事件添加监听器。
参数 |
|
|---|---|
|
类型 |
cast.framework.system.EventType 值不得为 null。 |
|
handler |
function(non-null cast.framework.system.Event) |
canDisplayType
canDisplayType(mimeType, codecs, width, height, framerate) 返回布尔值
检查平台是否支持视频或音频串流的给定媒体参数。
参数 |
|
|---|---|
|
mimeType |
字符串 媒体 MIME 类型。它由类型和子类型组成,两者之间用“/”分隔。它可以是视频或音频 MIME 类型。 |
|
编解码器 |
可选 字符串 带引号的字符串包含以英文逗号分隔的格式列表,其中每种格式都指定了数据流中存在的媒体样本类型。 |
|
width |
可选 数值 描述视频流的水平分辨率(以像素为单位)。 |
|
高度 |
可选 数值 描述视频流的垂直分辨率(以像素为单位)。 |
|
framerate |
可选 数值 描述视频流的帧速率。 |
- 返回
-
boolean如果直播可以在 Chromecast 上播放。
getApplicationData
getApplicationData() 会返回 cast.framework.system.ApplicationData
在系统准备就绪后提供应用信息,否则将为 null。
- 返回
-
nullable cast.framework.system.ApplicationData应用信息;如果系统未准备就绪,则为 null。
getDeviceCapabilities
getDeviceCapabilities() 会返回 cast.framework.system.DeviceCapabilitiesObj
在系统准备就绪后提供设备功能信息,否则将为 null。如果返回空对象,则设备不会公开任何功能信息。
- 返回
-
nullable cast.framework.system.DeviceCapabilitiesObj设备功能信息(键值对)。如果系统尚未准备就绪,则此值为 null。如果平台未公开任何设备功能信息,则此字段可能是一个空对象。
getDeviceInformation
getDeviceInformation() 会返回 cast.framework.system.DeviceInformationObj
在系统准备就绪后,提供与功能无关的设备标识信息,否则将为“null”。如果返回空对象,则设备不会公开任何此类信息。
- 返回
-
nullable cast.framework.system.DeviceInformationObj设备信息(键值对)。如果系统尚未准备就绪,则该值为 null。如果平台未公开此信息,则该对象可能为空。
getPlayerManager
getPlayerManager() 会返回 cast.framework.PlayerManager
获取可控制和监控媒体播放的 Player 实例。
- 返回
-
non-null cast.framework.PlayerManager
getSender
getSender(senderId) 返回 cast.framework.system.Sender
按发送者 ID 获取发送者
参数 |
|
|---|---|
|
senderId |
字符串 要返回的发件人 ID。 |
- 返回
-
nullable cast.framework.system.Sender
getSenders
getSenders() returns Array of non-null cast.framework.system.Sender
获取当前已连接的发送器的列表。
- 返回
-
non-null Array of non-null cast.framework.system.Sender
getStandbyState
getStandbyState() 会返回 cast.framework.system.StandbyState
报告投屏应用的 HDMI 输入是否处于待机状态。
- 返回
-
non-null cast.framework.system.StandbyState应用的 HDMI 输入是否处于待机状态。如果无法确定(例如,因为电视不支持 CEC 命令),则返回的值为 UNKNOWN。
getSystemState
getSystemState() 会返回 cast.framework.system.SystemState
提供有关系统状态的应用信息。
- 返回
-
non-null cast.framework.system.SystemState系统状态。
getVisibilityState
getVisibilityState() 会返回 cast.framework.system.VisibilityState
报告投放应用是否为 HDMI 有效输入源。
- 返回
-
non-null cast.framework.system.VisibilityState应用是否为 HDMI 活跃输入。如果无法确定(例如,因为电视不支持 CEC 命令),则返回的值为 UNKNOWN。
isSystemReady
isSystemReady() 返回布尔值
当应用调用 start 时,系统会发送 ready 事件,以指示应用信息已准备就绪,并且应用可以在有一个发送器连接后立即发送消息。
- 返回
-
boolean系统是否已准备好处理消息。
loadPlayerLibraries
loadPlayerLibraries(useLegacyDashSupport)
开始加载播放器 js。这可用于在调用 start 之前,在启动接收器的早期阶段开始加载播放器 js 代码。 如果播放器已加载(已调用 start),此函数将不执行任何操作。
参数 |
|
|---|---|
|
useLegacyDashSupport |
可选 布尔值 指明应将 MPL 用于 DASH 内容。 |
removeCustomMessageListener
removeCustomMessageListener(namespace, listener)
移除之前通过 CastReceiverContext#addCustomMessageListener 注册的消息监听器。
参数 |
|
|---|---|
|
命名空间 |
字符串 命名空间。请注意,有效的命名空间必须以字符串“urn:x-cast:”为前缀。 |
|
监听器 |
function(non-null cast.framework.system.Message) 要取消注册的消息监听器函数。 |
- 抛出
-
Error如果系统未准备就绪,或者此应用不支持该命名空间。
removeEventListener
removeEventListener(type, handler)
移除监听器以投射系统事件。
参数 |
|
|---|---|
|
类型 |
cast.framework.system.EventType 值不得为 null。 |
|
handler |
function(non-null cast.framework.system.Event) |
sendCustomMessage
sendCustomMessage(namespace, senderId, data)
向特定发送者发送消息。
参数 |
|
|---|---|
|
命名空间 |
字符串 命名空间。请注意,有效的命名空间必须以字符串“urn:x-cast:”为前缀。 |
|
senderId |
(字符串或未定义) senderId,或 undefined(表示向所有发送者广播)。 |
|
数据 |
任意类型 消息载荷。 值不得为 null。 |
- 抛出
-
Error如果准备消息时出错。
sendFeedbackMessage
sendFeedbackMessage(feedbackMessage)
如果应用将调试状态信息添加到反馈报告中的日志,则应调用此函数来响应 feedbackstarted 事件。 它接受一个参数“message”,该参数是一个字符串,表示应用要记录的调试信息。
参数 |
|
|---|---|
|
feedbackMessage |
字符串 |
- 已弃用
- 使用 cast.framework.CastReceiverContext#setFeedbackHandler
setApplicationState
setApplicationState(statusText)
设置应用状态。应用应在其状态发生变化时调用此方法。如果未定义或设置为空字符串,则默认情况下,应用注册期间建立的应用名称值将用于应用状态。
参数 |
|
|---|---|
|
statusText |
字符串 状态文本。 |
setFeedbackHandler
setFeedbackHandler(feedbackHandler)
设置一个处理程序,以便向反馈报告提供更多数据。 创建反馈报告时,系统会调用该处理程序,该处理程序应以字符串或字符串 promise 的形式返回额外数据。 返回的 promise 应在 5 秒内解析,以便将其包含在报告中。
参数 |
|
|---|---|
|
feedbackHandler |
function() 值可能为 null。 |
setInactivityTimeout
setInactivityTimeout(maxInactivity)
设置接收器不活动超时。建议在调用 Start 时设置最大不活动值,并且不要更改该值。此 API 仅用于开发/调试目的。
参数 |
|
|---|---|
|
maxInactivity |
数值 关闭无响应连接之前的时间间隔(以秒为单位)。 |
setLoggerLevel
setLoggerLevel(level)
设置日志详细程度级别。
参数 |
|
|---|---|
|
级别 |
日志记录级别。 值不得为 null。 |
start
start(options) 会返回 cast.framework.CastReceiverContext
初始化系统管理器和媒体管理器,以便接收器应用可以接收来自发送器的请求。
参数 |
|
|---|---|
|
选项 |
(非 null cast.framework.CastReceiverOptions 或可选的非 null 对象) |
- 返回
-
non-null cast.framework.CastReceiverContext
停止
stop(closeReason)
关闭接收器应用。
参数 |
|
|---|---|
|
closeReason |
可选 cast.framework.common.CloseReason 可选的关闭原因,用于指明接收器应用停止的原因。如果未提供,框架将根据最近的媒体播放器事件推断原因,或回退到 APP_REQUEST。传递以下数值之一:
值不得为 null。 |