美文网首页
Android的webview请求麦克风权限问题

Android的webview请求麦克风权限问题

作者: 桃先森_ | 来源:发表于2020-03-05 01:30 被阅读0次

    问题场景:app内嵌套一个H5做的聊天页面,发送语音消息需要申请麦克风权限;
    清单文件权限是:

        <uses-permission android:name="android.permission.INTERNET" />
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.RECORD_AUDIO" />
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    

    问题一:页面弹框提示


    image.png

    大写的what???我明明动态申请录音权限了啊
    最后查到解决方法;原因是webview需要在WebChromeClient中重写onPermissionRequest方法,代码如下:

        myWebView.setWebChromeClient(new WebChromeClient() {
                @Override
                public void onProgressChanged(WebView view, int newProgress) {
                    super.onProgressChanged(view, newProgress);
                }
    
                @Override
                public void onPermissionRequest(PermissionRequest request) {
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                        //直接同意即可     deny是拒绝
                        request.grant(request.getResources());
                    }
                }
            });
            myWebView.loadUrl(webUrl);
    

    原以为就这么解决了,事与愿违第二个问题来了,弹框提示这个

    image.png
    最终看到这篇文章,传送门:http://www.voidcn.com/article/p-bshmzkhc-bub.html
    解决方法很简单,就是在清单文件加入这个权限就好了 😂😂
        <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    

    至此,没有问题了,可以正常使用了!给自己点赞👍

    给自己做个笔记的同时也希望能帮助到别人,喜欢的可以点个关注,随时沟通探讨技术。

    相关文章

      网友评论

          本文标题:Android的webview请求麦克风权限问题

          本文链接:https://www.haomeiwen.com/subject/zqfnlhtx.html