Почему размер моего приложения на устройстве отличается от размера APK или Play Store

У меня есть довольно правильный вопрос от пользователя, который я не могу понять, пытаясь понять, почему размер, указанный в магазине Google Play, отличается от размера, указанного на устройстве. Мой подписанный размер APK выпуска на моем ПК поставляется в 3,8 МБ. Загрузка в Google Play показывает аналогичный размер. Однако просмотр диспетчера приложений на устройстве показывает следующую статистику:

Total: 6.62MB App: 6.51MB Data: 112KB 

Это не связано с защитой от копирования в Google Play (как и другие подобные вопросы), так как я получаю одинаковые статистические данные, устанавливающие подписанный APK или APK разработки.

APK на телефоне под / data / app снова появляется 3,8 МБ, а файлы под /data/data/com.my.app выходят на другой 100 КБ или около того (предположительно, строка «Данные» выше).

Что вызывает несоответствие в статистике?

EDIT: исследуя это, это общая функция во многих приложениях на моих устройствах. Google Play сообщает об одном размере, и устройство сообщает что-то в целом по величине в 2 раза больше. Настолько хорошо знать, что это, вероятно, не то, что я делаю, но все же любопытно, что аргументация здесь заключается в том, что ее разочарование может быть обвинено пользователями «врачевания» размера установки, чтобы казаться меньше!

При установке APK в системе Android, установленный файл DEX. Который содержит ваш код, ресурсы и т. Д., Скомпилированные как двоичные файлы. Обычно ваш dex имеет одинаковый размер вашего apk, если у вас нет ресурсов, которые не были скомпилированы в активах.

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

Вот почему объем памяти наших приложений двойной в системе. Это сумма размера оригинального apk и установленного dex.

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

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

  • Установить ширину столбца переменной текста в printf
  • Array vs Array - Инициализация массива с переменным vs действительным числом
  • Как получить общий объем оперативной памяти устройства?
  • C # «Параметр недействителен». Создание нового растрового изображения
  • Масштабируйте ImageIcon автоматически до размера метки
  • Можете ли вы resize массива C ++ после инициализации?
  • Что делает звезда WPF (Width = "100 *")
  • Проверка размера объекта в Objective-C
  • Определите размер слова моего процессора
  • Использование jQuery для получения размера windows просмотра
  • Разница между длинными и внутренними типами данных
  • Давайте будем гением компьютера.