IONIC Android Apk Размер файла слишком велик! как уменьшить размер приложения на андроид?

Я разработал приложение, используя ionic, и теперь при создании APK-файла для Android его размер становится слишком большим.

до интеграции API размер файла составлял 4,8 МБ после того, как я начал интеграцию API, я только что изменил 10 страниц, затем размер файла APK стал 71 МБ

Плагины Cordova, которые я использовал

cordova-plugin-console 
cordova-plugin-datepicker
cordova-plugin-device
cordova-plugin-network-information
cordova-plugin-splashscreen
cordova-plugin-statusbar
cordova-plugin-whitelist
cordova-plugin-x-socialsharing
cordova-sqlite-storage
es6-promise-plugin
ionic-plugin-keyboard

Я разархивировал файл APK, чтобы узнать, что происходит. Я заглянул в папку build в папке assets/www/ весом 357 МБ, и она содержит файлы js и файлы MAP.

Папка Rest Assets в WWW, которая содержит файл Css, имеет размер 4,5 МБ.

как уменьшить размер приложения для android apk?


person Praveen Vishnu    schedule 22.06.2018    source источник
comment
как вы его генерируете? вы используете флаг --prod?   -  person Suraj Rao    schedule 22.06.2018
comment
Я не использую --prod. Я все равно проверю еще раз. Спасибо.   -  person Praveen Vishnu    schedule 22.06.2018
comment
Недавно я обнаружил, что какая-то версия модуля клавиатуры слишком велика. Просто проверьте это один раз.   -  person Hyuck Kang    schedule 22.06.2018


Ответы (8)


Вы должны использовать флаг --prod при сборке apk для производства. Он минимизирует размер за счет сжатия файлов.

ionic build android --prod --release
person suzan    schedule 22.06.2018
comment
Спасибо, я пробовал с режимом --prod.. Приложение уменьшено до 21 МБ.. мне нужно уменьшить его в любом случае, спасибо - person Praveen Vishnu; 25.06.2018
comment
Да, это на самом деле слишком сильно уменьшает размер apk - person Mohamad Al Asmar; 21.04.2020
comment
ионная кордова сборка android --prod --release - person SHUBHASIS MAHATA; 31.08.2020

Для людей, сталкивающихся с этой проблемой в более новых версиях Ionic:

В Ionic 4.3 есть ошибка в сценариях сборки. Если вы запускаете сборку отладки, а затем сборку выпуска/производства, папка www не очищается, и у вас будут все файлы исходной карты (.js.map) в папке www и, следовательно, в конечном файле apk.

См. https://github.com/ionic-team/ionic-cli/issues/3954

person Klemens Zleptnig    schedule 01.07.2019

Пожалуйста, используйте команду ниже:
ionic cordova build android --minifycss --optimizejs --minifyjs --release [note:- "ionic cordova build android --prod --release" command have email pattern matching issue in a form, always give invalid email error hence not used that command]
Используйте ссылку ниже для получения более подробной информации:
https://ionicframework.com/docs/cli/cordova/build/

person Sandy.....    schedule 22.06.2018

Запустите cordova clean, чтобы очистить проект от артефактов сборки.

person Tomislav Stankovic    schedule 22.06.2018

Похоже на ошибку (не уверен), но когда активна перезагрузка в реальном времени, функция встряхивания дерева заставляет сборку создавать несколько файлов фрагментов в папку www, и я думаю, что чем больше вы перезагружаете, тем больше файлов у вас там будет.

Таким образом, вы увидите файлы в форме

0.7f0f403f3c9f5914fbce.js
0.7f0f403f3c9f5914fbce.js.map
1.0db885b5a44ebd4ca57e.js
1.0db885b5a44ebd4ca57e.js.map
...and the number goes 0, 1, 2, ... n

Вам просто нужно удалить папку www, чтобы удалить устаревшие файлы фрагментов и перестроить приложение.

После этого размер apk должен быть оправдан.

person Emeke Ajeh    schedule 02.01.2020

Выполните следующие шаги

  1. сборка --prod
  2. удалить www перед сборкой из корневой папки
  3. ионная кордова сборка android --prod --release
person Sylvin J. Rodrigues    schedule 14.08.2020

отметьте sourceMap в angular.json, если true поместите его в false

person amara mohamed amine    schedule 23.09.2020

Я думаю, что немного опоздал с ответом, но вот некоторые из моих наблюдений:

Пути снижения производства АПК.

  1. Перед созданием APK убедитесь, что вы создали рабочую сборку. Используйте эту команду для создания рабочей сборки.

    ng build --prod
    
  2. Теперь используйте приведенную ниже команду, чтобы открыть студию Android для дальнейших шагов.

    ionic capacitor run android --prod
    //--prod is optional if you have already performed step 1
    
  3. Вы можете установить minifyEnabled для минимизации кода, что также значительно уменьшит размер APK.

  4. Есть еще одна вещь, которую я пробовал: после создания рабочей сборки вы можете удалить неиспользуемые SVG из исходной папки Android. Я считаю, что это добавлено в активы и так в prod APK. (Хотя шаг 4, я не уверен, безопасно ли его выполнять, но в любом случае он мне не навредил) :)

Я видел, что размер был уменьшен с 4,2 МБ до 3,4 МБ с помощью шага 4;)

Это шаги, которые я выполнил, чтобы уменьшить размер ионных APK.

Удачного кодирования!!

person user9009353    schedule 22.04.2021