我写了一个webrtc webapp(带有video + audio + dataChannel):
https://github.com/wennycooper/wsProject
我也写了一个Android webrtc应用程序:
https://github.com/wennycooper/webrtcClient
webapp-to-webapp调用正常。 没有数据通道的androidapp-to-androidapp也可以正常工作。
我尝试将数据通道代码添加到androidapp中,并从webapp调用到androidapp。当被叫方收到要约时,它显示以下错误:
04-10 15:48:32.410: W/libjingle(10639): Warning(rtpdataengine.cc:149): Failed to SetSendCodecs because there is no known codec.
04-10 15:48:32.410: W/libjingle(10639): Warning(channel.cc:2375): Failed to set remote data description
04-10 15:48:32.420: E/libjingle(10639): Error(channel.cc:730): Failure in SetRemoteContent with action 0
04-10 15:48:32.420: E/libjingle(10639): Error(webrtcsession.cc:272): Failed to set remote offer sdp: Session error code: ERROR_CONTENT. Session error description: Failed to set data send codecs..
04-10 15:48:32.420: D/MainActivity(10639): Creating ANSWER...
04-10 15:48:32.420: E/libjingle(10639): Error(webrtcsessiondescriptionfactory.cc:245): CreateAnswer can't be called before SetRemoteDescription.
04-10 15:48:32.420: E/libjingle(10639): Error(webrtcsessiondescriptionfactory.cc:408): Create SDP failed: CreateAnswer can't be called before SetRemoteDescription.
完整的adb日志已经结束:
https://s3-us-west-2.amazonaws.com/kkwebrtc/webrtcAndroid_callee.txt
我不知道发生了什么事? 任何人都可以提供数据通道的工作示例将非常感激。
答案 0 :(得分:3)
最后,我得到了一个有效的例子。
我所做的是注释掉以下行并使用SCTPDataChannel。
//pcConstraints.optional.add(new KeyValuePair("RtpDataChannels", "false"));