更改为不同来源时,Chromecast webkitvisibilitychange 事件不会在电视上触发

Posted

技术标签:

【中文标题】更改为不同来源时,Chromecast webkitvisibilitychange 事件不会在电视上触发【英文标题】:Chromecast webkitvisibilitychange events not firing on TV when changing to different source 【发布时间】:2013-12-02 19:22:27 【问题描述】:

我正在尝试为 chromecast 接收器应用程序实现可见性状态更改事件侦听器,以便在更改为电视上的不同输入时,我可以暂停播放内容。这似乎是可能的,并通过receiver developer guide 向接收器应用程序请求。

我检查了google chrome's page visibility information 并按照它来确保我正确添加了它。我的代码如下所示:

var handleVisibilityChange = function() 
  console.log('visibility changed');
  console.log(document.webkitHidden);
  console.log(document.webkitVisibilityState);
;
document.addEventListener('webkitvisibilitychange', handleVisibilityChange, false);

当我在我的计算机上以 chrome 运行接收器应用程序时,每次选择或取消选择选项卡时都会触发该事件。但是,当我在 chromecast 上更改为不同的输入源时,它还没有触发,或者如果我将 chromecast 从它所在的 HDMI 端口中拉出而不切断电源连接,它就会被调用。我也试过几台电视,包括三星电视和索尼 GTV。

【问题讨论】:

可能是在发送方应用程序中触发了事件? 发件人应用程序不是网络应用程序,所以我怀疑情况是否如此。您是否建议通过 chromecast API 将事件发送回本机应用程序? 【参考方案1】:

是否触发该事件取决于您的电视中实现的 HDMI 堆栈,因此无法保证它会在您的电视上触发。

在相关说明中,最近的 Chromecast 更新破坏了该功能,该功能将在未来的更新中修复,因此即使 HDMI-CEC 堆栈提供该功能,您现在也无法看到该功能。

【讨论】:

知道它什么时候上线,什么时候修复它是否会支持更多电视? 目前还没有时间线可以分享。至于支持更多的电视,这不取决于chromecast设备;它主要是电视 HDMI 堆栈的一个功能,用于通知 Chromecast 设备,因此当问题得到解决时,支持不会有任何变化。

以上是关于更改为不同来源时,Chromecast webkitvisibilitychange 事件不会在电视上触发的主要内容,如果未能解决你的问题,请参考以下文章

Chromecast 应用程序未在 Chromecast 的应用程序页面中列出

连接时不同的 chromecast 操作栏图标

Android-L 预览版中的 AppCompat / Chromecast

当连接到不同的应用程序/设备时,我可以控制 chromecast 的音量吗?

python 使用Chromecast时(或更具体地说,当某些应用程序处于打开状态时),快速破解使飞利浦Hue灯泡变暗。

在按钮悬停时将文本和路径更改为不同颜色