Я разработал простой видеочат webrtc для веб-браузера, и он хорошо работал в браузерах Android Firefox и Chrome. Теперь я начал создавать приложение для Android с помощью Cordova, но getusermedia api даже не имеет доступа к веб-камере. тот же код в платформе браузера Cordova, получите доступ к веб-камере.

в настоящее время тестирую на Android версии 4.4 kitkat

. Также разрешен доступ к камере. Я что-то пропустил

код API getusermedia

    const mediaStreamConstraints = {
    video: true,
  };

  // Video element where stream will be placed.
  const localVideo = document.querySelector('video');

  // Handles success by adding the MediaStream to the video element.
  function gotLocalMediaStream(mediaStream) {
    localVideo.srcObject = mediaStream;
  }

  // Handles error by logging a message to the console with the error message.
  function handleLocalMediaStreamError(error) {
    console.log('navigator.getUserMedia error: ', error);
  }

  // Initializes media stream.
  navigator.mediaDevices.getUserMedia(mediaStreamConstraints)
    .then(gotLocalMediaStream).catch(handleLocalMediaStreamError);
2
ambach 66 22 Июн 2018 в 11:46

1 ответ

Лучший ответ

Android версии 4.4 KitKat не поддерживает WebRTC API.

В современных версиях Android компонент WebView основан на проекте с открытым исходным кодом Chromium, который уже включает WebRTC. Более подробная информация об этом находится здесь https://developer.chrome.com/multidevice/webview/overview < / а>. Как указано здесь, все устройства Android, начиная с начиная с Android 5.0, поддерживают WebRTC API в WebView .

На всякий случай, если вы ищете готовое решение для видеочата для Кордовы - я рекомендую попробовать видеочат ConnectyCube Cordova https://developers.connectycube.com/js/code-samples-videochat-cordova

1
Rubycon 8 Июл 2018 в 18:20