Несоответствие между размерами приложений, перечисленных в Play Store, и фактическим размером установленного приложения

10

В Play Store перечислены размеры всех приложений, доступных в их магазине. Когда пользователь загружает и устанавливает приложения, фактические размеры, сообщаемые Android, часто превышают размеры, указанные в Play Store.

Из важности, это несоответствие происходит до приложения работать даже в первый раз.

В чем причина расхождения?

RockPaperLizard
источник

Ответы:

7

Apk и zip файлы по сути одинаковые, сжатые. Прежде чем система сможет использовать файл, она должна быть распакована. Таким образом, файл имеет один размер при загрузке и другой размер при установке.

Также обратите внимание, что иногда, когда установлены apk, после открытия может потребоваться загрузка некоторых данных. Таким образом, размер файла снова увеличится.

Различия в размерах заметны при сравнении между рынками Android, один показывает один размер, а магазин игр показывает совершенно другой размер.

HasH_BrowN
источник
Огромное спасибо. Глупый Google ... очевидно, важно знать, насколько большим будет приложение после его установки ... Жаль, что Google опускает эту информацию в своем магазине Google Play.
RockPaperLizard
2
Вы упомянули «иногда, когда установлены apk, некоторые данные, возможно, потребуется загрузить». Это правильно? Могут ли приложения загружать данные, просто будучи установленными (а не открытыми)?
RockPaperLizard
Я имел в виду после открытия, мой ответ был отредактирован, чтобы отразить это. Но ни одно приложение не должно иметь возможность загружать данные, прежде чем открывать его в первый раз. Первый раз также может означать после перезагрузки, поэтому некоторые данные могут быть загружены тогда, если есть подключение к Интернету или как только они доступны.
HasH_BrowN
1
Спасибо! В вашем комментарии выше я предполагаю, что вы имели в виду «Но никакое приложение НЕ ДОЛЖНО иметь возможность загружать данные перед его первым открытием» вместо «Но никакое приложение НЕ ДОЛЖНО быть в состоянии ...»?
RockPaperLizard
@RockPaperLizard Lol. Я был в спешке, но да, это то, что я имел в виду "... никакое приложение не должно быть ..."
HasH_BrowN
7

В магазине Google Play и других магазинах приложений указан только основной размер приложения (APK), а не общий размер приложения, который включает в себя файлы расширения OBB (непрозрачный двоичный двоичный объект). OBB - это дополнительные файлы, которые загружает приложение для запуска. Перед загрузкой лишних файлов не должно быть разницы в размере файла.

Из раздела разработчиков Play Store:

Максимальный поддерживаемый размер для одного APK составляет 50 МБ. Если вам необходимо сохранить дополнительные ресурсы (например, изображения), вы можете загрузить файлы расширения.

Если вашему приложению требуется более 50 МБ памяти, вы можете использовать файлы расширения для хранения дополнительных ресурсов APK. Вы можете хранить два файла расширения для каждого приложения. Каждый файл расширения может иметь размер до 2 ГБ.

Файлы расширения размещаются без дополнительной оплаты. По возможности Google Play будет загружать файлы расширения при установке или обновлении приложений. В некоторых случаях вашему приложению потребуется загрузить файлы расширения.

Когда вы используете файлы расширения, один файл является основным файлом, а другой - необязательным файлом исправления. Дополнительные файлы исправлений обычно используются для небольших обновлений основного файла.

Файлы OBB используют то же сжатие, что и файлы APK, что является стандартным сжатием zip. Файлы APK и OBB хранятся в файловой системе в сжатом виде, а файлы внутри распаковываются в память по мере необходимости на лету. Так что нет, сжатый размер, то есть пространство, занимаемое на устройстве APK, не отличается от того, что должен указывать Play Store.

Наконец, магазин Play позволяет использовать несколько APK для каждого приложения. Это связано с тем, что некоторые большие приложения (в основном игры) должны предназначаться для разных ресурсов (графический движок, размер / разрешение экрана и т. Д.), И они не могут соответствовать этому размеру в одном APK (из-за ограничения размера). Если вы посмотрите на одну и ту же страницу Play Store на разных типах устройств, вы, скорее всего, увидите другой размер приложения в списке.

CDE
источник
Это приносит ценную новую информацию к ответам здесь. Можете ли вы расширить свой ответ вообще?
RockPaperLizard
2
@rockpaperlizard спок, что еще можно расширить?
августа
1
+1 за то, что был первым, кто получил это. :-) Еще несколько подробностей о том, что на самом деле загружает файлы OBB (приложение или Play Store?), Почему вы называете их «файлами расширения», и является ли общее сжатие (как упомянуто в других ответах) дополнительным фактор.
RockPaperLizard
@RockPaperLizard готово.
августа
Спасибо! Я внес несколько изменений, чтобы уточнить, пожалуйста, исправьте мои изменения, если я допустил какие-либо ошибки. Основываясь на предоставленной вами замечательной информации, я создал этот вопрос: android.stackexchange.com/questions/108931/…
RockPaperLizard,
3

В Google Play Store больше не указываются размеры, когда вы вошли в систему с учетной записью, к которой подключено несколько устройств.

Максимальный размер APK-файла увеличился до 100 МБ с 28 сентября 2015 года (ссылка: официальный блог разработчиков Android )

Из-за распаковки и различных версий и устройств размер установки приложения зависит от устройства - «Зависит от устройства». Только для некоторых приложений вы можете увидеть, насколько они велики, посетив игровой магазин без входа в систему.

Sandra
источник
Я хотел бы знать, есть ли какие-либо индикаторы, чтобы сказать «приблизительно», насколько велико приложение (<5, 10, 10-50, <50, 50-100 и т. Д.). Спасибо @Andrew за редактирование (:
Сандра
1

Потому что Play Store показывает размер загружаемого файла, а загружаемый файл (вероятно, apk) сжимается. Когда вы устанавливаете приложение, apk распаковывается и увеличивается.

srka
источник