网络版 Chromecast SDK session.queueLoad 不是函数

Chromecast sdk for web session.queueLoad is not a function

Chromecast sdk

我无法调用 session.queueLoad(...),但是如果我使用 session.c.queueLoad(...),它偶尔会起作用。 我也可以打电话给 session.loadMedia(...)。 这是我从网站中删除的代码示例。

var session = cast.framework.CastContext.getInstance().getCurrentSession();
      if(session)
      {
        var queueingItems = [..blahblah]
        console.log(queueingItems) //works
        queueingItems=queueingItems.map(m=>{
          var mediaInfo = new chrome.cast.media.MediaInfo(m.source, m.contentType)
          mediaInfo.metadata = new chrome.cast.media.GenericMediaMetadata();
          mediaInfo.metadata.title = m.description;
          var q = new chrome.cast.media.QueueItem(mediaInfo)
          q.autoplay=true
          return q
        })
        
        var qloadRequest=new chrome.cast.media.QueueLoadRequest(queueingItems)
        console.log(qloadRequest)

        //works
        session.c.queueLoad(qloadRequest,function(){
          console.log("loaded success")
        },()=>{})    
        
        //doesn't work
        session.queueLoad(qloadRequest,function(){
          console.log("loaded success")
        },()=>{})   
        
        //works
        session.loadMedia(qloadRequest[0],function(){
          console.log("loaded success")
        },()=>{})  
      }

.getCurrentSession() returns 一个 CastSession 对象。那没有 queueLoad 方法。我认为您想使用 CastSession's getSessionObj 方法,因为 returns 具有 queueLoad 方法的 Session 对象。