flutter release apk size 在 flutter sdk 1.20 版本中非常大
Flutter release apk size is very large in flutter sdk version 1.20
我正在制作一个非常简单的有 15 个屏幕的应用程序。当我 运行 这个命令 flutter 运行 --release.我发布的 apk 大小是 26.2mb,非常大。
我的颤振医生:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.20.2, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
[✓] Android Studio (version 4.0)
[!] Connected device
! No devices available
! Doctor found issues in 1 category.
我的 pubspec.yaml 文件包含这些依赖项:
cupertino_icons: ^0.1.3
flutter_svg: ^0.18.0
provider: any
image_picker: ^0.6.7+4
menu_button: ^1.2.1
pin_code_fields: ^5.0.1
flutter_pdfview:
path_provider:
http:
这些文件占用较多space。有什么办法可以减少发布 apk 的大小。对于这样的应用程序,大小非常大。在我之前的flutter sdk 1.17版本中30屏app的release apk大小不超过15mb.
从您的屏幕截图中显示的是 appbundle 的大小(为所有 android 平台创建),它是所有 apk 的总和(对于所有 android 平台),而不是一个文件的大小单一平台apk。原因是 flutter run --release
默认情况下会构建 appbundle,这是上传到 playstore 时推荐的构建 appbundle 的方法。 Playstore 将分别为每个设备生成 apk 以供下载(arm64-v8、armeabi-v7a 和 x86_64)。
因此,在您的情况下,要为尺寸测量生成合适的 apk,运行:
flutter build apk --target-platform=<YOUR_TARGET_PLATFORM>
或这个(将生成 2 个 APK)
flutter build apk --split-per-abi
更多详情请参考flutter.dev: Android App Size and flutter.dev:Build Modes
我正在制作一个非常简单的有 15 个屏幕的应用程序。当我 运行 这个命令 flutter 运行 --release.我发布的 apk 大小是 26.2mb,非常大。
我的颤振医生:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.20.2, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
[✓] Android Studio (version 4.0)
[!] Connected device
! No devices available
! Doctor found issues in 1 category.
我的 pubspec.yaml 文件包含这些依赖项:
cupertino_icons: ^0.1.3
flutter_svg: ^0.18.0
provider: any
image_picker: ^0.6.7+4
menu_button: ^1.2.1
pin_code_fields: ^5.0.1
flutter_pdfview:
path_provider:
http:
这些文件占用较多space。有什么办法可以减少发布 apk 的大小。对于这样的应用程序,大小非常大。在我之前的flutter sdk 1.17版本中30屏app的release apk大小不超过15mb.
从您的屏幕截图中显示的是 appbundle 的大小(为所有 android 平台创建),它是所有 apk 的总和(对于所有 android 平台),而不是一个文件的大小单一平台apk。原因是 flutter run --release
默认情况下会构建 appbundle,这是上传到 playstore 时推荐的构建 appbundle 的方法。 Playstore 将分别为每个设备生成 apk 以供下载(arm64-v8、armeabi-v7a 和 x86_64)。
因此,在您的情况下,要为尺寸测量生成合适的 apk,运行:
flutter build apk --target-platform=<YOUR_TARGET_PLATFORM>
或这个(将生成 2 个 APK)
flutter build apk --split-per-abi
更多详情请参考flutter.dev: Android App Size and flutter.dev:Build Modes