我正在尝试构建一个简单的基于JS的Web应用程序,它启动一个样式化的媒体接收器(由Google托管,读取您的自定义CSS文件)。我设置了一个开发者帐户,并在我的帐户中添加了该应用。我确保选择"样式媒体接收器"在我创建它时键入。
我正在使用here描述的基本设置构建我的发件人。我能够使用这个代码与自定义接收器一起工作。我可以在我的日志中看到检测到扩展名。
Found cast extension: boadgeojelhgndaghljhdicfkmllpafd
我使用Cast开发人员控制台上提供的应用ID设置会话请求。
var sessionRequest = new chrome.cast.SessionRequest(id);
然后我打电话给:
var apiConfig = new chrome.cast.ApiConfig(this.sessionListener.bind(this),
this.receiverListener.bind(this));
返回值"不可用"到" receiverListener"功能。当我尝试请求会话时,它返回错误回调,其中包含以下数据:
Object {code: "receiver_unavailable", description: null, details: null}
所以,我想弄清楚我可能会遗漏什么。就像我说的那样,我已经使用相同的代码成功启动了自定义接收器。这是我正在使用的完整代码:
Polymer({
ready: function(){
window['__onGCastApiAvailable'] = function(loaded, errorInfo){
if(loaded){
this.initCast();
}
else{
console.log(errorInfo);
}
}.bind(this);
},
initCast: function(){
var id = "731AC858";
var sessionRequest = new chrome.cast.SessionRequest(id);
var apiConfig = new chrome.cast.ApiConfig(sessionRequest,
this.sessionListener.bind(this),
this.receiverListener.bind(this));
chrome.cast.initialize(apiConfig,
this.initCastSuccess.bind(this),
this.initCastError.bind(this));
},
initCastSuccess: function(){
this.castReady = true;
},
initCastError: function(e){
console.log(e);
},
startCast: function(){
chrome.cast.requestSession(this.startCastSuccess.bind(this),
this.startCastError.bind(this));
},
startCastSuccess: function(e){
console.log(e);
},
startCastError: function(e){
console.log(e); //returns Object {code: "receiver_unavailable", description: null, details: null} when "startCast" is called.
},
sessionListener: function(e){
console.log(e);
},
receiverListener: function(e){
console.log(e);//returns "unavailable"
},
});
答案 0 :(得分:0)
好吧,看起来我要么不耐烦了,应用程序需要一段时间才能消化,或者托管Styled媒体接收器的服务器已经停机了一段时间。我今天试了一下,一切都很好。
<强> ---- ---- UPDATE 强>
我刚尝试创建一个新风格的媒体接收器应用程序,我无法连接它。所以我的猜测是,在开始使用它之前必须准备一些东西。