【Flutter】 webview请求权限问题

需求:webview可以通过录音后语音转文字。

使用插件:

Groovy 复制代码
permission_handler: ^11.0.1
webview_flutter: ^4.7.0

代码如下:

1.添加权限

添加安卓的权限:

android/app/src/main/AndroidManifest.xml

html 复制代码
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

添加IOS的权限:

ios/Runner/Info.plist

html 复制代码
<key>NSMicrophoneUsageDescription</key>
<string>需要麦克风权限才能使用应用中的录音功能。</string>

2.监听请求

Dart 复制代码
    controller.platform.setOnPlatformPermissionRequest((request) {
      Permission.speech.request().then((result)  {
        //如果没有权限就再次发起请求
        if(result.isDenied){
          Permission.speech.request();
        }else if(result.isGranted){
          request.grant();   //有权限就该干嘛干嘛,不加这句无法语音转文字
        }
      });
    });

暂时还不知道request.grant(); 里做了什么,有时间再研究。

相关推荐
xkxnq5 分钟前
第八阶段:工程化、质量管控与高级拓展(130天),Vue端到端测试:Cypress自动化测试(登录流程+表单提交+页面跳转)
前端·vue.js·flutter
●VON3 小时前
AtomGit Flutter鸿蒙客户端:文件树与代码浏览
android·服务器·安全·flutter·harmonyos·鸿蒙
911hzh16 小时前
Flutter Plugin 开发教程:从零创建原生插件到发布 pub.dev 完整流程
flutter
我有满天星辰21 小时前
【Dart 语言学习教程 】 第二章:面向对象编程
学习·flutter·dart
●VON1 天前
AtomGit Flutter鸿蒙客户端:API客户端与网络层
flutter·华为·架构·跨平台·harmonyos·鸿蒙
核电机组1 天前
IOS原生APP集成Flutter
flutter·ios
唔661 天前
在 Flutter 混合开发中,Android 原生层通知 Dart 界面更新状态
android·flutter
小书房1 天前
移动开发跨平台方案之RN/Flutter/KMP/CMP
flutter·react native·react·跨平台·rn·kmp·cmp
●VON1 天前
AtomGit Flutter鸿蒙客户端:安全JSON解析
安全·flutter·华为·json·harmonyos·鸿蒙