Flutter 版本 3.7.12
表现情况:
开发模式下打包(debug)ios和安卓均表现正常,通过flutter run --release打包安装后,ios正常使用,但是安卓闪退。
排查:
flutter 在打 release 包时会自动开启混淆,会造成一部分插件不能正常使用。
解决:
关闭release下混淆minifyEnabled false,并且需要设置shrinkResources false,且3.7.12版本下useProguard 是不可用的,很多文章提到useProguard、shrinkResources、minifyEnabled三者共用,需要注意!!!具体设置如下,修改android/app/buidl.gradle下
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled false //删除无用代码
shrinkResources false //删除无用资源
}
debug {
signingConfig signingConfigs.debug
minifyEnabled false
}
}