无法连接到风格的接收器

时间:2015-05-07 23:01:57

标签: javascript google-cast

我正在尝试构建一个简单的基于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"
  },
});

1 个答案:

答案 0 :(得分:0)

好吧,看起来我要么不耐烦了,应用程序需要一段时间才能消化,或者托管Styled媒体接收器的服务器已经停机了一段时间。我今天试了一下,一切都很好。

<强> ---- ---- UPDATE

我刚尝试创建一个新风格的媒体接收器应用程序,我无法连接它。所以我的猜测是,在开始使用它之前必须准备一些东西。