Flutter Apk版号不如预期的问题排解

前情提要

透过指令产生Flutter App的Apk时,发现产生的Apk有点肥(Apk Size约23MB)

flutter build apk

后来改用以下指令产Apk,大小可以缩小很多(Apk Size约9MB),
但又发现新问题,产生的APP版号跟pubspec.yaml设定的竟然不同

flutter build apk --split-per-abi


重现问题

如下图pubspec.yaml设定的版号为1
http://img2.58codes.com/2024/20110063UNziqC3GBX.png

透过工具aapt(Android Asset Packaging Tool)检查版号

aapt dump badging mypath/myApkName.apk

app-armeabi-v7a-release.apk版号却是1001
http://img2.58codes.com/2024/20110063rKGm96v4ew.png
app-arm64-v8a-release.apk是2001
http://img2.58codes.com/2024/20110063P3bM4KPAtc.png
app-x86_64-release.apk是4001
http://img2.58codes.com/2024/20110063DruPnc9kBy.png


原因与解法

Google下
发现Flutter Github Issue上有讨论#39871、#49544
大致上来说这是预设行为,因Google Play 商店不允许同一个应用程式使用多个全都具有相同版本资讯的APK
解法: 改成透过App Bundle部属APP


但如果想产Apk档但又怕产的Apk太肥怎么办?

参考解答
依需要将build apk指令改为下列三个
※若要上架到Google Play商店要记得3个Apk需设为不同的版号

app-arm64-v8a-release.apk

flutter build apk --target-platform=android-arm64

app-armeabi-v7a-release.apk

flutter build apk --target-platform=android-arm

app-x86_64-release.apk

flutter build apk --target-platform=android-x64

Flutter新手,有误还请各位前辈不吝指教


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章