Установить SD-карту или память телефона? и почему размер приложения отличается?

Я немного запутался в размерах памяти в приложениях для Android, есть ли разница между установкой приложения в память телефона и на SD-карту. Я предполагаю, что может быть разница в скорости реагирования и бега. Но мне интересно, есть ли другие различия в этом.

А также я установил свое приложение в память телефона и снова установил на SD-карту. Немедленная разница, которую я вижу, это размер приложения.

При установке в память телефона:
Общий размер: 5,15 МБ
Размер приложения: 4,96 МБ
Данные: 192 КБ

При установке на SD-карту:
Общий размер: 3,15 МБ
Размер приложения: 2,96 МБ
Данные: 196 КБ

Мой фактический размер файла apk: 2 МБ.

Почему указанная выше разница с установкой телефона и SD-карты.

Я действительно смущен этими вариациями размеров. Куда идет app 2 MB и data 4 KB как разница.

Я много гуглил и не нашел ответов. Я также пробовал на developer.android.com и stackoverflow, но мне не повезло.

Так что мои сомнения,

  1. В чем разница между установкой приложения на телефон и на SD-карту.

  2. Почему разница в размере отображается, когда я устанавливаю свое приложение на SD-карту и телефон. Где разница 2 Мб уходит и в чем эта разница.

  3. Как размер больше при установке из актуального apk. (Я предполагаю, что apk будет извлечен и установлен на устройстве, поэтому размеры могут быть увеличены во время установки.) Пожалуйста, поправьте меня, если мое предположение неверно в третьем.

Заранее спасибо.


person Kartihkraj Duraisamy    schedule 16.11.2012    source источник
comment
На SD-карту устанавливается только часть приложения, и указанный размер соответствует размеру приложения во внутренней памяти.   -  person Jimbali    schedule 16.11.2012


Ответы (2)



Пока внешнее хранилище подключено к устройству, это не влияет на производительность приложения. Файл .apk сохраняется во внешнем хранилище, но все личные пользовательские данные, базы данных, оптимизированные файлы .dex и извлеченный собственный код сохраняются во внутренней памяти устройства. Уникальный контейнер, в котором хранится ваше приложение, зашифрован случайно сгенерированным ключом, который может быть расшифрован только тем устройством, на котором оно изначально установлено. Таким образом, приложение, установленное на SD-карту, работает только для одного устройства. Пользователь может переместить свое приложение во внутреннюю память через системные настройки.

person Asteriskiiii    schedule 26.02.2013
comment
Спасибо. Но вопрос в том, почему и как размер отличается и как он элегантно влияет на использование хранилища... - person Kartihkraj Duraisamy; 05.03.2013