【问题标题】:HTML Camera API in Android webviewAndroid webview 中的 HTML 相机 API
【发布时间】:2018-10-16 07:09:11
【问题描述】:

我正在使用以下 html 代码。我可以在我的桌面上获得视频流,但我在 android webView 应用程序中获得了一个灰色的播放按钮。我通过 https 连接提供服务。 请指导我,因为我是这两个代码 sn-ps 的新手。

HTML

<div id="video-container">
 <video id="camera-stream" width="500" autoplay></video>
</div>

Script.js

window.onload = function() {
 navigator.getUserMedia = (navigator.getUserMedia ||
                        navigator.webkitGetUserMedia ||
                        navigator.mozGetUserMedia || 
                        navigator.msGetUserMedia);
 if (navigator.getUserMedia) {
  navigator.getUserMedia({ video: true },
  function(localMediaStream) {
   var vid = document.getElementById('camera-stream');
   vid.srcObject = localMediaStream;
  },
function(err) {
  console.log('The following error occurred when trying to use getUserMedia: ' + err);
 }
);
} else { alert('Sorry, your browser does not support getUserMedia'); }
}

此屏幕截图来自我的桌面 chrome 浏览器。

这是从我的手机 webView 中获取的。

【问题讨论】:

  • 我也遇到了同样的问题,希望得到解决方案
  • 如果你找到了,也请告诉我
  • @Sarabjit 你找到解决这个问题的方法了吗?

标签: android webview html5-video camera-api


【解决方案1】:

我知道这是一个旧线程,但我最近遇到了同样的问题,经过多次尝试,我终于找到了解决方案。

如果您看到此播放按钮,则应正确设置所有权限。 似乎 webview 正在等待用户交互以启动流,但点击图标不会启动视频(idk 用户应该如何“批准”流)

解决方案是在你的 webapp 中更改 webview 的设置:

webView.settings.mediaPlaybackRequiresUserGesture = false;

通过这种方式,流无需任何用户交互即可正确启动

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 1970-01-01
    • 2022-07-21
    • 2015-10-06
    • 2018-01-24
    • 1970-01-01
    相关资源
    最近更新 更多