Redmi Note 7中Flutter应用未出现在权限设置列表的问题咨询
解决Flutter应用不在位置权限列表的问题
第一步:在AndroidManifest.xml中声明权限
打开项目的android/app/src/main/AndroidManifest.xml,在<manifest>标签内添加对应位置权限声明,按需选择:<!-- 粗略位置权限 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 精确位置权限 --> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- Android 10+ 后台位置权限(需前台权限授权后单独请求) --> <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />第二步:在Flutter代码中主动触发权限请求
应用只有触发过系统权限弹窗并被用户处理后,才会出现在系统权限列表里,推荐使用permission_handler插件实现:- 在
pubspec.yaml添加依赖:
dependencies: permission_handler: ^10.2.0- 在代码中发起权限请求:
import 'package:permission_handler/permission_handler.dart'; Future<void> requestLocationPermission() async { final PermissionStatus status = await Permission.location.request(); if (status.isGranted) { // 权限授权成功,执行后续逻辑 } else if (status.isDenied) { // 权限被拒绝,可提示用户前往设置开启 } }在应用启动或需要使用位置功能的时机调用这个方法,完成权限交互。
- 在
第三步:适配MIUI系统特殊逻辑
若以上操作后仍未显示,试试:- 卸载应用后重新安装运行,确保权限弹窗正常弹出
- 进入小米「安全中心」-「应用管理」-「权限管理」,直接搜索应用名称(系统列表加载慢时,搜索更高效)
内容的提问来源于stack exchange,提问作者Dragut
相关产品推荐
相关产品推荐

