Flutter项目集成了权限请求框架 permission_handler,在Android端的权限请求没什么问题,iOS端安装之后,跳转到应用设置后找不到相应的权限,权限声明:
应用设置页面:
我还以为跟Android端的权限一样,声明了这边就会显示出来然后可以设置,然后又查看了文档和代码,终于发现个问题:
iOS文件夹下有个Profile文件,这个文件以前编译失败然后删除了重新生成了,看文档这里面是要添加代码,所以加入以下代码
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
target.build_configurations.each do |config|
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
'$(inherited)',
'PERMISSION_MICROPHONE=1',
'PERMISSION_CAMERA=1',
'PERMISSION_PHOTOS=1',
]
end
end
end
重新运行,可以正常的设置权限了,完事儿,收工!