Как Android рассчитывает кэш и размер данных? - PullRequest
9 голосов
/ 14 октября 2011

Как рассчитывается размер кэша и данных в свойствах приложения?

Я сохраняю все свои данные на SD-карту, но Android показывает, что я постоянно использую 4 КБ, а на SD-карте около 50 КБ. То же самое с кешем! Я положил туда 3 Мб картинки. Но мой размер кеша равен нулю!

Мне кажется, я использую правильный каталог: /mnt/sdcard/Android/data/my.package.name/files и /mnt/sdcard/Android/data/my.package.name/cache.


Изменилось ли это в Android 4.0.x?

Смотрите этот скриншот:

image

Ответы [ 2 ]

4 голосов
/ 17 октября 2011

Я считаю, что размер кэша - это размер каталога внутреннего кэша, который возвращается http://developer.android.com/reference/android/content/Context.html#getCacheDir()

Я думаю, что вы использовали: http://developer.android.com/reference/android/content/Context.html#getExternalCacheDir()

0 голосов
/ 17 октября 2011

Страница свойств приложения показывает только использование внутренней памяти, а не внешней памяти (SD-карта).

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

Кроме того, внешняя память обычно намного больше внутренней памяти и может управляться пользователем, поэтому использование SD-карты, вероятно, не так уж и важно.

...