如何解决如何在 WebView 上请求麦克风、摄像头权限?
在 manifests.xml 中
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" android:required="true"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="android.permission.RECORD_AUdio" />
<uses-permission android:name="android.permission.MODIFY_AUdio_SETTINGS"/>
<uses-permission android:name="android.permission.VIDEO_CAPTURE" />
<uses-permission android:name="android.permission.AUdio_CAPTURE" />
还有我的活动。
class WebViewActivity : AppCompatActivity() {
val wv: WebView by lazy {
findViewById<WebView>(R.id.wv)
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_web_view)
init()
}
private fun init(){
wv.settings.mediaplaybackRequiresUserGesture = false;
wv.settings.javaScriptEnabled = true
setUpWebViewDefaults(wv)
wv.loadUrl("https://com.example")
wv.webChromeClient = object : WebChromeClient() {
override fun onPermissionRequest(request: PermissionRequest) {
runOnUiThread(Runnable {
if (request.origin.toString() == "https://com.example/") {
request.grant(request.resources)
} else {
request.deny()
}
})
}
}
}
private fun setUpWebViewDefaults(webView: WebView) {
val settings = webView.settings
// Enable Javascript
settings.javaScriptEnabled = true
// Use WideViewport and Zoom out if there is no viewport defined
settings.useWideViewPort = true
settings.loadWithOverviewmode = true
// Enable pinch to zoom without the zoom buttons
settings.builtInZoomControls = true
// Allow use of Local Storage
settings.domStorageEnabled = true
// Hide the zoom controls for HONEYCOMB+
settings.displayZoomControls = false
// Enable remote debugging via chrome://inspect
webView.webViewClient = WebViewClient()
// AppRTC requires third party cookies to work
val cookieManager = CookieManager.getInstance()
cookieManager.setAcceptThirdPartyCookies(webView,true)
}
}
这不会显示权限弹出窗口。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。