Chromecast 接收器选择未打开

Chromecast receiver selection doesn't open

我想向我的网页添加基本的 Chromecast 功能。我卡在了第二步。我可以初始化 Chromecast 但当用户单击 Chromecast 按钮时我无法打开接收器选择器。我每次都遇到这个错误:

{
  code: "session_error"
  description: null
  details: null
}

我尝试使用与 here 相同的代码。这段代码对我有用,但是当我将它集成到我的页面时,它就不起作用了。 Chrome 是否有可能无法检测到用户交互的发生,这就是它不起作用的原因? 还有什么办法可以解决这个问题吗?

编辑:

我尝试了多个 chrome 具有 Google 默认接收器应用程序 ID 的投射设备,但它不起作用。这些设备使用链接的源页面。

点击事件在不同的JS文件中处理会不会出问题?如果它是从不同的域加载的怎么办?我在文档中找不到任何提示。

根据 Ali Nadaff 在这篇 SO post 中的说法:

勾选这些;希望他们能解决问题:

  • 确保您已在开发者控制台上注册了您的 chromecast 设备。仔细检查序列号,因为有时很难阅读。
  • 在 chromecast 设置过程中,有一个框显示类似 "Send the serial number .." 的内容,确保选中它
  • 等待 1/2 小时左右,然后重新启动您的 chromecast
  • 检查您是否可以从同一 wifi 网络上的 chrome 浏览器访问 http://:9222;如果可以,那么您的设备已准备好进行开发 至于你所指向的图像上的区域,目前更多的是为了提供信息

终于找到了这个问题的原因session_error。 onClick 事件中有一个异步调用,我们尝试 requestSession() after 它。 当然,Chromecast API 不允许这样做,只能由用户直接操作。