TGViewer
Android Live 🤖 Android Live 🤖 @android_live · 5.13K subscribers
Post #209 3.81K
Playing APK Golf
#статьи #разработка

Вы когда-нибудь задавались вопросом, насколько можно сжать размер APK?

Попалась статья, где автор задался целью максимально уменьшить размер apk «Hello World». Первоначально размер файла был 1.5mb. После определенных действий размер стал 1757 байт. Не слабая оптимизация, верно?

К сожалению, сжать apk файл обычного приложения не так просто, да и врядли получится сжать его в 3-5 раз. Но убрать пару лишних мегабайт реально. Вот несколько советов, которые помогут в этом.

1) Удалите неискользуемые ресурсы. Сделать это достаточно просто. Стоит запустить в Android Studio Refactor -> Remove unused resources. После этого обязательно проверьте, что не удалилось чего-то лишнего. Хотя бы запустите приложение и проверьте, что оно запускается.
2) Проанализируйте итоговый apk. Для этого надо воспользоваться командой Build -> Analyze APK. Посмотрите, какая категория имеет наибольший размер. Чаще всего этой категорией будет — ресурсы.
3) Переведите png в webp.
4) Удалите неиспользуемые языки. Я уже упоминал этот пункт. В этом посте. Лично я был удивлен, как много могут весить строковые ресурсы.
5) Примените App Bundle. Также это уменьшит размер файла приложения для пользователя. Упоминал об этом тут.
6) Удалите неиспользуемые библиотеки. Обязательно стоит время от времени анализировать текущий список зависимостей в проекте. Некоторые разработчики ради одного класса тянут целую зависимость. Еще часто после рефакторинга библиотека вообще не используется в проекте, но при этом остается в зависимостях. Также много «веса» добавляют нативные библиотеки. Анализируйте и их.

Может быть, вы знаете еще способы уменьшения размеров apk? Буду рад почитать их в комментариях.
More from @android_live
  1. Oct 6, 2026Git --delete-merged На днях узнал про любопытную команду в Git — --delete-merged . Суть пр…
  2. Oct 5, 2026Почему Android-эмулятор жрёт 8 ГБ? На днях попался репозиторий с CLI-тулзой, которая обеща…
  3. Sep 29, 2026Post #1130
  4. Sep 29, 2026На днях попалась вакансия мечты Вроде всё начинается как неплохо: удалёнка, Kotlin/Jetpack…
  5. Sep 28, 2026На днях ревьювил код, связанный с копированием в буфер обмена И заметил, что многие прилож…
  6. Sep 26, 2026AirDrop на Android, похоже, уже есть на нескольких моделях Android Но, оказывается, всё эт…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →