问题描述
我正在尝试在 WebView
中显示 WebRTC
聊天.根据本文档,WebView v36
支持WebRTC
.对于我的测试,我使用的是带有 Chrome/39.0.0.0
的设备,并且我已经为 AndroidManifest.xml
文件添加了权限:
I'm trying to show WebRTC
chat in WebView
.According to this documentation, WebView v36
supports WebRTC
. For my test I'm using a device with Chrome/39.0.0.0
and I have added permissions to the AndroidManifest.xml
file:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<user-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
但是当我进入聊天时,我看到一个 Chromium 错误日志(设备不显示\翻译任何内容,只有加载"进度条):
but when I enter into the chat, I see a Chromium error log (device doesn't show \ translate anything, only 'loading' progress bar):
W/AudioManagerAndroid: Requires MODIFY_AUDIO_SETTINGS and RECORD_AUDIO
W/AudioManagerAndroid: No audio device will be available for recording
E/chromium: [ERROR:web_contents_delegate.cc(178)] WebContentsDelegate::CheckMediaAccessPermission: Not supported.
E/chromium: [ERROR:web_contents_delegate.cc(178)] WebContentsDelegate::CheckMediaAccessPermission: Not supported.
W/AudioManagerAndroid: Requires MODIFY_AUDIO_SETTINGS and RECORD_AUDIO
W/AudioManagerAndroid: No audio device will be available for recording
D/ChromiumCameraInfo: Camera enumerated: front
在真实设备上测试,Android 5.1.1.
Tested on a real device, Android 5.1.1.
推荐答案
需要额外的权限请求
webView.setWebChromeClient(new WebChromeClient(){
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public void onPermissionRequest(final PermissionRequest request) {
request.grant(request.getResources());
}
});
更新但它不适用于音频捕获
UPDATE 找到了有效的 google 示例代码 这里
UPDATE found working google-sample code here
这篇关于Chromium WebView 中的 WebRTC 错误:“CheckMediaAccessPermission:不支持"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!