【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(); 里做了什么,有时间再研究。

相关推荐
YM52e10 分钟前
鸿蒙 Flutter 渐变效果详解:LinearGradient、RadialGradient、SweepGradient
android·学习·flutter·华为·harmonyos·鸿蒙
YM52e13 分钟前
鸿蒙 Flutter BoxDecoration装饰:打造精美UI效果
学习·flutter·ui·华为·harmonyos·鸿蒙
YM52e2 小时前
鸿蒙Flutter Card组件:Material设计风格卡片
android·学习·flutter·华为·harmonyos·鸿蒙
世人万千丶12 小时前
鸿蒙Flutter TextStyle样式配置
学习·flutter·harmonyos·鸿蒙
nice先生的狂想曲16 小时前
flutter中key的使用
flutter·客户端
常在士心19 小时前
Flutter Dio高阶封装&多级缓存策略
flutter
司素网19 小时前
Flutter Platform Channel 的 await 陷阱:为什么加与不加相差 100ms?
flutter
zengorange21 小时前
Dart语言
学习·flutter
YM52e1 天前
鸿蒙Flutter Stack堆叠布局:实现多层级界面
学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统
帅次1 天前
Android 高级工程师面试:Flutter 渲染与性能 近1年高频追问 20 题
android·flutter·面试·渲染·性能