2014-12-14 2 views
0

ChromeCast의 맞춤 수신기에 메시지를 보내려고합니다. 내 Android 앱에서 다음 코드를 사용하여 수신자에게 코드를 보냅니다.크롬 캐스트가 메시지를받지 못합니다.

Cast.CastApi.sendMessage(mApiClient, "urn:x-cast:move", "TEST"); 

수신 측에 다음 코드가 있습니다. 내가 코드에서 지적한 바와 같이

window.mediaElement = document.getElementById('media'); 
window.mediaManager = new cast.receiver.MediaManager(window.mediaElement); 
window.castReceiverManager = cast.receiver.CastReceiverManager.getInstance(); 
window.castReceiverManager.start(); 

window.castReceiverManager.onSenderConnected = function(event) { 
    //This is called 
} 

window.customMessageBus = window.castReceiverManager.getCastMessageBus('urn:x-cast:move', cast.receiver.CastMessageBus.MessageType.STRING); 
var defaultFunction = window.customMessageBus.onMessage; 
window.customMessageBus.onMessage = function(event) { 
    //This is not called 
    defaultFunction(event); 
}; 

는 'onSenderConnected'라고, 그래서 나는 응용 프로그램에 연결 알고있다. 그러나 사용자 정의 메시지 버스를 통해 메시지를 보내려고하면 아무 것도주지 못합니다. 나는 완전히 새로운 안드로이드 및 캐스트, 그래서 나는 천 가지 잘못 할 수 있습니다. 아무도 내가이 문제를 해결하도록 도울 수 있습니까?

답변

2

직접 해결했습니다. 내가 잘못했던 것은 사용자 정의 네임 스페이스를 추가하기 전에 castReceiverManager를 시작하는 것이 었습니다. 그래서 수신기에 대한 올바른 코드는 내가 질문에 게시 한 내용과 비교됩니다.

window.mediaElement = document.getElementById('media'); 
window.mediaManager = new cast.receiver.MediaManager(window.mediaElement); 
window.castReceiverManager = cast.receiver.CastReceiverManager.getInstance(); 
//Removed the start here 

window.castReceiverManager.onSenderConnected = function(event) { 
    //OnConnect 
} 

window.customMessageBus = window.castReceiverManager.getCastMessageBus('urn:x-cast:move', cast.receiver.CastMessageBus.MessageType.STRING); 
var defaultFunction = window.customMessageBus.onMessage; 
window.customMessageBus.onMessage = function(event) { 
    //OnMessage 
    defaultFunction(event); 
}; 

//Start at the end 
window.castReceiverManager.start();