Android webrtc не работает с 3g, 4g
В приложении для Android у меня есть пользователь webrtc для приложения видеозвонков.
Если мобильный телефон подключен к Wi-Fi, приложение работает отлично.
Когда я переключаю Wi-Fi на мобильные данные и запускаю приложение, приложение не работает, а также не отображает видео.
У меня есть пользователь webrtc в моем приложении и на стороне сервера kurento.
Ниже приведен список сценариев со статусом:
- Клиент браузера + Мобильный клиент -> Оба в одной и той же сети Wi-Fi(сервер KMS в одной и той же сети Wi-Fi) -> Работает нормально.
- Мобильный клиент + мобильный клиент -> Оба в одной и той же сети Wi-Fi(сервер KMS в одной и той же сети Wi-Fi) -> Работает нормально.
- Клиент браузера + Мобильный клиент -> Один из них на Wi-Fi(сервер KMS в той же сети Wi-Fi), а другой на мобильной сети передачи данных -> Не работает
- Мобильный клиент + мобильный клиент -> один из них по Wi-Fi(сервер KMS в той же сети Wi-Fi), а другой по мобильной сети передачи данных -> не работает
Мы проверили кандидата, сгенерированного для всего этого сценария, и обнаружили, что они одинаковы, единственное различие наблюдается при получении нескольких кандидатов.
У нас есть сервер Turn Crate, а также Stun, но видео не отображается в Android-клиенте с подключением 3G.
У любого есть решение тогда помогите мне.
Заранее спасибо.
1 ответ
Теоретически тип сети не должен влиять на работу WebRTC или нет.
Но есть и другие факторы, влияющие на это. Прежде всего, если оба устройства подключены к одной и той же сети Wi-Fi, вам не нужен сервер TURN. При подключении через мобильные данные это не может иметь место, поэтому у вас должен быть настроен сервер STUN/TURN. Для проверки сервера вы можете использовать https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/.
Во-вторых, качество сети может повлиять на соединение. Вы должны выполнить тест скорости сети и помнить, что задержка и дрожание даже важнее, чем скорость загрузки / выгрузки. Вы можете отключить видео и проверить только со звуком, который потребляет меньше пропускной способности.