Flutter Android权限报错:已加RECORD_AUDIO仍提示未找到权限[]7
解决Flutter permission_handler报错"No permissions found in manifest for: []7"的问题
可能的原因及修复步骤
确认Manifest文件路径正确
确保权限声明添加到android/app/src/main/AndroidManifest.xml文件中,而非debug或其他子目录下的Manifest文件,误修改文件会导致权限不生效。检查权限请求的枚举值是否正确
报错中的[]7对应permission_handler库中Permission.microphone的内部标识,需确认代码中请求的是正确权限:var status = await Permission.microphone.request();避免误用其他权限枚举值。
清理项目缓存并重建
缓存可能导致Manifest修改不生效,执行以下操作:- 运行
flutter clean清理缓存 - 重新执行
flutter run - 若仍无效,手动删除
android/app/build目录后再重新构建项目
- 运行
修正权限声明格式
确保Manifest中的权限声明无语法错误,正确格式为:<uses-permission android:name="android.permission.RECORD_AUDIO" />注意将转义字符
"替换为正常双引号",避免因格式问题导致权限不被识别。适配targetSdkVersion权限规则
若项目targetSdkVersion >= 23,麦克风权限属于危险权限,除Manifest声明外,需通过permission_handler动态请求权限,确保代码中已正确调用请求逻辑。
内容的提问来源于stack exchange,提问作者Rahul Choudhury
相关产品推荐
相关产品推荐

