环境:
- GoogleWebRTC 1.1.31999
- Xcode 13
- iOS 15
问题描述:
1、 学习WebRTC时,先用simple-peer实现了浏览器和浏览器之间的音视频互通。
2、然后结合浏览器的经验,基于GoogleWebRTC for iOS实现了iOS真机和浏览器直接的互通
3、 最后在测试iOS真机之间的互通时,基本不互通,测试失败。排查了很长时间,最后定位为API调用顺序错误
应先设置远端SDP,再设置远端ICE,具体到API就是,先设置
调用setRemoteDescription
,然后再调用addIceCandidate
// 收到远端SDP和ICE信息后
[peerConnection setRemoteDescription:remoteSDP completionHandler:^(NSError * err){
[peerConnection addIceCandidate:remoteICE];
}
];