因为项目需要用到定位、相机、麦克风权限,所以调用了permission_handler库来实现。
但是在正常调试时没有出现任何问题,能够弹出获取权限的对话框也能够正常获取各项权限;
而使用命令flutter build apk
后打包生成的release版本中没有弹出获取权限的对话框也不会获取权限。
在CSDN、知乎和SegmentFault都发布了问题但是无果最后决定自己解决,终于在官方GitHub的Issues版块找到了有同样问题的小伙伴。
Dont work Permission_handler in release mode #406
在评论区中找到了答案:
try to do that in gradle.properties
android.enableR8=true
change to
android.enableR8=false
意思就是说修改android/gradle.properties中的
android.enableR8=true
为
android.enableR8=false
再次打包后就可以了!
感谢这位老铁!