我正在尝试使用chrome测试一些chromecast示例,但无法在我的APP-ID的可用接收器列表中看到chromecast。
这是我的情况,
我的chromecast设备已列入白名单。我收到了与我的收件人网址相关的APP-ID。
我可以使用浏览器访问我的接收者网址,它与我的应用ID完全相同。
receiver.html有类似的内容:
var receiver = new cast.receiver.Receiver( 'APP-ID', ['测试'], “” 5);
APP-ID是我将Chromecast设备列入白名单时收到的。
receiver.html托管了公共IP。每个人都可以访问它。
sender.html:
var appId =“APP-ID”;
$ window.addEventListener(“message”,function(event){
if (event.source == window && event.data &&
event.data.source == "CastApi" &&
event.data.event == "Hello") {
$log.info("CastApi Hello message received!");
initializeApi();
}
});
var initializeApi = function(){
cast_api = new cast.Api();
cast_api.addReceiverListener(appId, **onReceiverList**);
};
var onReceiverList = function(list){
$scope.receivers = list;
var fn = list.length ? $log.info : $log.warn;
fn("Receivers: ", list);
$scope.$apply();
};
问题是收件人列表总是空的!!!
sender.html托管在我的本地主机服务器上,并在chromecast扩展程序的选项页面中使用“localhost”一词将其列入白名单。
当我第一次使用Chrome设置Chromecast(没有Android)时,我选中了“在检查更新时发送此Chromecast的序列号”选项。我可以使用网址http:// MY-CHROMECAST-IP * :9222访问调试模式,所以我确定它正在运行。
不知道我错过了什么。
有人可以帮助我吗?
答案 0 :(得分:1)
我在2个不同的网络上的Windows 7上遇到过这个问题。
OSX和Linux上的人们看到可用的接收器没有问题。
选项卡本身可以看到chromecast,并且PC上的所有其他chromecast操作都可以正常工作,但是当我问JS API是否有任何接收器时,它总是为空。
这与应用程序是否已发布无关。
似乎API中存在需要由Google解决的合法错误。
答案 1 :(得分:0)
理想情况是在开发过程中在本地托管接收器,这样您就可以立即制作和保存更改,并立即在Chromecast设备上看到它们,而无需将更改推送到可公开访问的服务器。
为了达到这个目的,我使用了https://meetfinch.com/,它的效果非常好。安装并注册(免费)后,运行:
finch forward http://localhost:8080