Демо-версия PubBub WebRTC Android не соединяется с Android на Android

Когда я попробовал демо-приложение https://kevingleason.me/AndroidRTC/, оно работало как положено.

Но когда я попробовал с двумя устройствами Android, я могу позвонить и принять вызов, но они не подключаются. На обоих устройствах собственный канал камеры отображается с текстом "Подключение...". Я попробовал и на моем домашнем Wi-Fi и на мобильных данных 3G. Там нет ошибки, что я могу найти в журнале.

Может ли кто-нибудь помочь мне решить проблему, пожалуйста. Что мне здесь не хватает?

Я использую последний код с https://github.com/GleasonK/AndroidRTC котором уже настроены серверы Xirsys ICE. Но я заметил, что серверы Xirsys ICE не добавляются в строке ниже из VideoChatActivity.java, поэтому я также попытался добавить эти серверы в конструктор PnSignalingParams, но все еще сталкиваюсь только с тем же сообщением Connecting.

List<PeerConnection.IceServer> servers = getXirSysIceServers();    
if (!servers.isEmpty()) {      
   this.pnRTCClient.setSignalParams(new PnSignalingParams(servers));      
}      

1 ответ

Я исправил проблему. Это было немного сложно. Если вы видите журнал, он покажет вам, что приложение всегда выполняет метод createOffer. Таким образом, и клиент А, и клиент Б отправят предложение в одно и то же время. Вы можете решить эту проблему, задав какое-то условие, чтобы, если клиент А дал предложение, а клиент Б ответил, дав ответ.

Чтобы увидеть, если происходит какая-либо ошибка, вы можете использовать метод onCreateFailure(String s) а также onSetFailure(String s) в PnPeer.java. Надеюсь, это поможет.

Другие вопросы по тегам