类:CastReceiverContext

方法

getInstance

static

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)

设置日志详细程度级别。

参数

级别

cast.framework.LoggerLevel

日志记录级别。

值不得为 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。传递以下数值之一:

  • 13 (APP_CUSTOM_STOP):适用于自定义接收端界面/业务操作(例如,用户点击应用内的“退出”或“关闭”按钮,自定义接收端导航离开投屏)。
  • 15 (APP_ERROR):在 CAF 的内置播放器错误事件之外发生的严重应用级错误(例如自定义身份验证失败、DRM/许可检索失败、后端 API 崩溃)。
  • 14 (APP_PLAYBACK_FINISHED):应用已播放完其播放列表/队列中的内容,或已完成独立的媒体体验。
  • 6 (APP_REQUEST):当应用请求终止但未提供更具体的原因时,会使用此通用/旧版后备原因。

值不得为 null。