Flutter iOS应用重构后不再请求相机/相册权限问题求助
Flutter iOS重构后相机/相册权限请求失效排查(XCode15、iOS17环境)
近期对Flutter iOS应用完成重构,核心操作是将main.dart中的代码拆分到独立文件。重构后应用突然不再向用户请求相机或相册权限,导致无法访问对应资源。当前环境为XCode 15、iOS 17。
已执行以下排查操作:
- 确认
permission_handler插件已更新至v11.0.1 - 反复检查
info.plist中权限描述键配置正确:
<key>NSCameraUsageDescription</key> <string>We need access to your camera for taking pictures.</string> <key>NSPhotoLibraryUsageDescription</key> <string>We need access to your photo library for selecting pictures.</string>
- 更新pod至1.13.0
- 更新homebrew至4.1.15
- 更新Flutter及工具至Flutter 3.13.6稳定版
- 执行
flutter clean、flutter pub get等命令 - 在真机和模拟器环境多次重装应用
相关代码片段:
File? _image; UploadState _uploadState = UploadState.idle; Future<void> _checkPermissionsAndPickImage( ImageSource source, BuildContext context) async { Permission permission = (source == ImageSource.camera) ? Permission.camera : Permission.photos; PermissionStatus status = await permission.request(); if (status.isGranted) { _pickImage(source); } else if (status.isPermanentlyDenied) { _showPermissionDeniedDialog(context); } else { print('Permission not granted. Cannot access $source.'); } }
异常现象:系统设置中找不到该应用的权限设置选项。
内容的提问来源于stack exchange,提问作者Hans-Kristian Norum Eidesen
相关产品推荐
相关产品推荐

