DevTools для Flutter и Dart дает одинаковый результат даже после масштабирования изображений

Я играю с флаттером и создаю простую викторину. Проект почти готов к публикации в игровом магазине, и нужно кое-что исправить. но я попробовал новый флаттер --analyze-sizeи обнаружил, что могу еще больше уменьшить размер файла, уменьшив изображение. Я масштабировал изображения (значительно уменьшил размеры) и заменил исходные файлы. затем я запустил flutter clean а также flutter pub get и побежал flutter build apk --analyze-size --target-platform=android-arm64просто чтобы еще раз проверить. Хотя я уменьшил размеры файлов изображений, инструмент анализа показывает те же размеры, что и раньше. Я также попытался сделать недействительным параметр кеширования / перезапуска в студии Android. но все равно результат тот же. Когда я выбрал два json файла для сравнения в опции Diff в DevTools, он говорит, что это идентичные файлы. Может кто-нибудь указать мне, как это исправить, пожалуйста?

кстати, я нахожусь на бета-версии канала flutter, 2.5.0 на Windows 10

7 ответов

Пытаться rm -rf build в добавление к flutter clean.

Как упоминалось в этом ответе , перед запуском flutter clean, проверьте в диспетчере задач Windows, работает ли какой-либо процесс Flutter в фоновом режиме, это правда, остановите его.

Однако в настоящее время вы можете обновить версию Flutter до 2.5.1 (стабильная) . Как? Выполнение этой команды: flutter upgrade.

Кроме того, вы можете переключаться между 4 каналами выпуска (стабильный, бета, для разработчиков и мастер) с помощью flutter channel <channel_name>

  1. Убедитесь, что изображения, размер которых вы уменьшили, являются частью ваших флаттер-ресурсов . Если они не указаны в pubspec.ymlто они не являются частью ваших файлов apk. Если они не являются частью вашего файла apk, то независимо от размера, который вы уменьшаете, это не повлияет на размер apk. Вы также не увидите различий в файле результатов анализа. .json или.

  2. Дважды проверьте, действительно ли размер ваших изображений изменен в выходном файле apk. Когда ты бежишь --analyze-size, он также создал apk. В Android Studio вы можете открыть apk и проверить размер изображений, упакованных в apk.

Иногда размер APK остается прежним, но загружаемый размер изменяется. Я также не уверен, что здесь происходит, но до тех пор, пока фактический размер изображений в apk уменьшается, а размер загрузки конечного пользователя уменьшается, первоначальная цель уже достигнута, поэтому я просто продолжаю.

Переименуйте изображения (добавьте 1 или что-то тривиальное), очистите, перестройте, а затем переименуйте обратно в исходные имена, очистите, перестройте.

Flutter может кэшировать имена файлов.

Что ж, вы можете попробовать следующее, чтобы этого не произошло,

Чтобы:

  • Запустить
  • Вручную удалите /build папка, которая по сути совпадает с flutter clean
  • Как уже сказал @Guillem, может быть сбой диспетчера задач restarting machine должен сделать свое дело.
  • flutter pub cache repair в основном запускает кеш, связанный со спецификациями pub, но в вашем случае может помочь запустить обновление кеша, попробуйте.
  • Backup All image assets где-нибудь и удалите их из проекта только для того, чтобы построить его без него, а затем в случае ошибки включите изображения в проект и повторите шаги, указанные выше.

Сообщите мне, сработало ли что-нибудь из этого для вас.

Чтобы уменьшить размер приложения FLutter, выполните следующие действия:

  1. Использовать пакет google-fonts
  2. Использовать flutter build apk --split-per-abi строить apks
  3. удалить ненужные значки из пакета. Для этого добавьте --no-tree-shake-icons флаг к команде сборки apk
  4. Используйте значки формата .svg
  5. Использовать shrinkResources trueв /android/app/build.gradle внутри release блокировать
  6. Удалите неиспользуемые активы / пакеты
  7. Используйте кешированные изображения вместо использования из ресурсов
  8. Используйте progaurd (здесь ).

Попробуйте это, чтобы уменьшить размер изображения: https://www.img2go.com/compress-image

или похожие сайты

Другие вопросы по тегам