#android #apk #size
#Android #apk #размер
Вопрос:
Я создаю приложение для Android.В нем есть 2 действия и 10 фрагментов.Я впервые публикую приложение.Когда я впервые анализирую приложение, оно небольшого размера.когда я пытаюсь установить через это apk.Device, скажите, что это только для теста.
Когда я создаю apk, а затем анализирую его, его размер увеличивается в 3 раза.
Я не понимаю, почему размер моего приложения увеличивается.
Комментарии:
1. Спасибо, я замечаю их, но дело в том, нужны ли они? Поскольку я хочу опубликовать это приложение, и я не думаю, что кто-нибудь собирается загружать этот большой apk (мой build apk имеет размер 50 МБ).
Ответ №1:
На обоих скриншотах указана причина: первая версия содержит только библиотеки для armv7 (32bit), а на других скриншотах показано, что включены библиотеки для x86, armv7 и armv8. Библиотека имеет от 11 до 15 МБ, и ее включение в три раза, конечно, увеличивает размер приложения.
Поскольку для каждого устройства требуется только одна из библиотек, вы можете уменьшить размер загрузки, разделив свое приложение на app-bundle. Пакетированное приложение разбивается на несколько частей, и если пользователь устанавливает приложение, Google Play загружает только те части, которые необходимы для текущего устройства. Поэтому будет загружена только одна из трех библиотек.
Комментарии:
1. Спасибо, только одно последнее сомнение. Вы говорите, чтобы загрузить пакет вместо apk. И Google Play загрузит только необходимые части. Таким образом, в итоге около 10 МБ будет удалено из 18 МБ (размер загрузки). И пользователю нужно будет загрузить только около 8 МБ приложения?
2. @SahilGoyal На самом деле, объединенное приложение — это уже не один файл APK, а их множество. Вы загружаете пакет, содержащий все файлы APK, в Google, и для загрузки Google отправляет пользователю только необходимые файлы APK, следовательно, размер приложения снова невелик ~ 8 МБ в вашем случае?
3. Большое, большое спасибо вам. Это мой первый раз, и это огромное увеличение размера беспокоило меня. Но ты спас меня.
Ответ №2:
Похоже, вы использовали собственную библиотеку для своего приложения. Дело в том, что собственные библиотеки зависят от platorm. Родную библиотеку ARM нельзя использовать для x86, и наоборот.
Таким образом, Android Studio должна создать собственную библиотеку для трех более распространенных архитектур Android: ARMv7, ARMv8 и x86. Отсюда и увеличение размера. Вы не можете — и не должны — удалять дополнительные архитектуры, потому что это может привести к тому, что приложение не будет работать на некоторых устройствах. Такого рода увеличение размера неизбежно при использовании формата APK.
Пакеты приложений для Android решают эту проблему, загружая только то, что необходимо для устройства. Руководство по публикации в виде пакета находится по ссылке.
Комментарии:
1. Спасибо за помощь.
Ответ №3:
Определенные библиотеки должны быть установлены в соответствии с моделями процессоров телефонов. При публикации в виде пакета приложений. Этого будет достаточно для загрузки ресурсов в соответствии с телефоном пользователя.