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

相关推荐
阿里云云原生15 小时前
还原一次用户等待:深度解析 Flutter RUM SDK 如何打通 Dart 到 Native 的观测链路
flutter
_阿南_17 小时前
flutter 展示的字体突然奔放了
android·flutter·ios
GitLqr20 小时前
玩转 Dart typedef:不仅是函数别名那么简单
flutter·面试·dart
FungLeo1 天前
Flutter 两个反直觉布局坑:ListTile 水波纹 / VerticalDivider 踩坑实录
android·flutter
年小个大1 天前
受 go-zero 启发,我给 Flutter 写了一套 CLI 脚手架
android·flutter·架构
FungLeo2 天前
Flutter 骨架屏 Shimmer 实现:不用 transform 的扫光法实战
前端·javascript·flutter
GitLqr2 天前
Flutter 居然能直接跑在 Apple Watch 上了?玩转 flutter-watchos
flutter·全栈·apple watch
你听得到112 天前
排查 App 问题:别只盯着报错,把前后发生的事情串起来
android·前端·flutter
天空之城--2 天前
近一周Android Flutter行业动态与实用参考
android·flutter
GitLqr3 天前
玩转 Flutter 项目依赖:从 pubspec.yaml 到实战包管理
flutter·面试·全栈