Flutter应用程式大小庞大

时间:2018-08-09 07:34:52

标签: android flutter

我是使用Java的Android应用程序开发人员,并且我已经使用Google创建的dart语言了解Flutter。我觉得这很有趣,因为它可以同时为Android和ios构建应用程序。我已经为Android创建了一个简单的TabsLayout应用程序,该应用程序的大小为27MB,请查看简单的TabLayout Flutter应用程序的屏幕截图。

enter image description here我有下面列出的两个问题

  1. 我已经看到Flutter应用程序的大小超过25 MB,那么为什么Flutter应用程序在开发后却占用了巨大的空间?

  2. 如何减小Flutter应用程序的大小?

2 个答案:

答案 0 :(得分:5)

debug应用程序将较大,但是您的release应用程序应较小,约​​为7-8 MB。应用程序本身的最小大小为4.7Mb,请参见this,与本机应用程序相比,它仍然更大,但是不能期望跨平台的任何改进

选中此documentation

答案 1 :(得分:1)

截至今天

在Android中

minimal Flutter app的下载大小(没有材料组件,只有一个用flutter build apk --split-per-abi构建的Center小部件),打包并压缩为发行版APK,对于ARM约为4.3 MB,并且对于ARM 64为4.6 MB。

flutter build apk (默认为--release)将构建一个APK以支持目标设备,这可能会导致非常大的APK(胖APK) 减小APK大小的一种方法是创建多个包含特定屏幕密度或Abis文件的APK。

运行flutter build apk --split-per-abi

此命令可构建两个apk 定位arm,基于arm64的设备 apk位于build/app/outputs

在iOS上

据苹果公司的App Store Connect报告,同一应用的发行版IPA在iPhone X上的下载大小为10.9 MB。 IPA比APK大,主要是因为Apple对IPA中的二进制文件进行加密,从而使压缩效率降低。

默认情况下,我们为iOS构建通用二进制文件,其中包括针对以下三个方面的armv7和arm64体系结构:

  • Flutter.framework(引擎)
  • App.framework(AOT编译的应用程序)
  • Runner(应用程序的入口)

Apple会在其端进行应用程序稀疏,以便最终用户仅下载与其设备相关的位。要获取下载大小,

  1. 登录App Store Connect,
  2. 选择您的应用,导航到“活动”页面,
  3. 选择您的构建,
  4. 然后单击“ App Store文件大小”链接。

来源:

  1. flutter FAQ
  2. Reduce --release apk and ipa sizes