我正在構建Chromecast發件人應用程序,並且我可以成功地投射會話。但是我只能施放一次。當我斷開我的sessionListener回調永遠不會觸發,這是有問題的,因爲那是我設置我的sessionUpdate
監聽器的地方。如果沒有這些,就不可能知道會話什麼時候結束,以便重置會話並進行清理,這意味着我不能重鑄任何東西,因爲我無法知道會話是否有效。Chromecast API未調用sessionListener()回調
據我可以告訴問題是在cast_sender.js
這是方便混淆,所以我可能是錯的。
我設置了我的ApiConfig如下:
apiConfig = new _chrome.cast.ApiConfig(
sessionRequest,
_sessionListener.bind(this),
_receiverListener.bind(this));
_receiverListener
預期被激發,我已經調試cast_sender.js
的地步,我可以看到我的功能_sessionListener
被傳遞和在線#正確設置的cast_sender.js
,這裏837:
835 chrome.cast.dd = function(a, c, d, e, f) {
836 this.sessionRequest = a;
837 this.sessionListener = c;
838 this.receiverListener = d;
839 this.autoJoinPolicy = e || chrome.cast.Fb.TAB_AND_ORIGIN_SCOPED;
840 this.defaultActionPolicy = f || chrome.cast.Jb.CREATE_SESSION;
841 this.customDialLaunchCallback = null;
842 };
該功能出現在線路#2441被調用,在這裏:
2440 b.Wf = function(a) {
2441 this.B && this.B.sessionListener(a.message);
2442 };
我在那裏設置了一個斷點,它從來沒有被調用過。在這一點上,我陷入了僵局,有什麼想法?
您是否可以在使用SessionListener的CastVideos-chrome材質(https://github.com/googlecast/CVideosVideos-chrome-material)中重現此操作? –
我其實認爲我已經解決了這個問題。我根據github中的CastHelloText-chrome示例設置了發件人,這似乎是錯誤地設置了會話。我今天晚些時候會提交我的修復請求。 –
@AliNaddaf https://github.com/googlecast/CastHelloText-chrome/pull/14 –