Размер Flutter release apk очень велик в flutter sdk версии 1.20

#flutter #dart #apk #version

#flutter #dart #apk #версия

Вопрос:

Я создаю очень простое приложение с 15 экранами. И когда я запускаю эту команду, flutter запускает —release. Размер моего APK-файла для выпуска составляет 26,2 Мб, что очень много.

Мой доктор flutter:

 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:
  

github

Эти файлы занимают больше места. Есть ли какой-либо способ, которым мы можем уменьшить размер релиза apk. Для приложений, подобных этому, размер очень большой. В моей предыдущей версии flutter sdk версии 1.17 размер apk-файла для приложения с 30 экранами составлял не более 15 мб.

Ответ №1:

На вашем скриншоте показан размер appbundle (созданного для всех платформ Android), который равен сумме всех apk (для всех платформ Android), а не размеру apk для одной платформы. Причина в том, что flutter run --release по умолчанию будет собран appbundle, который является рекомендуемым способом сборки appbundle при загрузке в playstore. 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 и flutter.dev: Режимы сборки