我们连接到https://meet.jit.si进行视频会议。如果我们在Android设备上使用了Chrome浏览器(已在Android 7和10上进行了测试),则可以在启用Camera和Mic的情况下加入。能够同时打开和关闭它们。但是,如果我们使用Webview尝试相同的操作,则即使打开网站,我们甚至都没有收到允许访问的提示,并且在尝试打开它们时出现“无法访问摄像头/麦克风”错误。

这是我们的代码。

清单

获得加载时的运行时权限String[] permissions =

{Manifest.permission.READ_EXTERNAL_STORAGE,

Manifest.permission.WRITE_EXTERNAL_STORAGE,

Manifest.permission.INTERNET,

Manifest.permission.RECORD_AUDIO,

Manifest.permission.CAMERA};

ActivityCompat.requestPermissions(

this,

permissions,

1010);

将网页加载到WebView中String url = "https://meet.jit.si/testingconf49854";

WebView webView = findViewById(R.id.webView);

WebSettings mWebSettings = webView.getSettings();

mWebSettings.setLoadsImagesAutomatically(true);

mWebSettings.setBlockNetworkLoads(false);

mWebSettings.setJavaScriptEnabled(true);

mWebSettings.setLoadWithOverviewMode(true);

mWebSettings.setUseWideViewPort(false);

mWebSettings.setTextZoom(70);

mWebSettings.setCacheMode( WebSettings.LOAD_NO_CACHE );

mWebSettings.setUserAgentString("Mozilla/5.0 (Linux; Android 5.1.1; Nexus 5 Build/LMY48B; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/43.0.2357.65 Mobile Safari/537.36");

webView.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);

webView.setScrollbarFadingEnabled(true);

Map noCacheHeaders = new HashMap(2);

noCacheHeaders.put("Pragma", "no-cache");

noCacheHeaders.put("Cache-Control", "no-cache");

webView.loadUrl(url, noCacheHeaders);

[请让我们知道我们在这里缺少什么。感谢您的帮助。

更多推荐