Где Android-приложения хранят данные?

Не могли бы вы перечислить все возможные каталоги, в которых приложения Android могут хранить данные, предоставляя описание того, какие данные хранятся в каждом каталоге?

70 голосов | спросил mrpyo 25 J0000006Europe/Moscow 2013, 14:00:11

2 ответа


67

Все приложения (root или нет) имеют каталог данных по умолчанию, который является /data/data/<package_name>. По умолчанию здесь загружаются базы данных приложений, настройки и все другие данные. Если приложение ожидает, что огромное количество данных будет сохранено, или по другим причинам хочет «быть хорошим для внутреннего хранилища», на SDCard есть соответствующий каталог (Android/data/<package_name>) .

Кроме того, все приложения могут хранить данные в любом месте на SDCard, так как ограничений нет - и многие приложения делают это. Они могут свободно использовать имена каталогов (и они снова это делают), что часто затрудняет решение, для чего предназначен этот «мусор» на карте, и что из этого можно удалить.

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

Общее описание иерархии каталогов Android вы найдете в в моем ответе здесь . Для вашего конкретного вопроса я могу добавить более подробную информацию о /data/data/<package_name> (и соответствующую SD-часть):

  • databases/: здесь идут базы данных приложения
  • lib/: библиотеки и помощники для приложения
  • files/: другие связанные файлы
  • shared_prefs/: настройки и настройки
  • cache/: хорошо, кеширует

В этом месте может быть несколько каталогов, или меньше - все зависит от приложения. В своем собственном «домашнем каталоге» (и это то, что в основном есть, говорят Linux-мудрый), они могут размещать файлы там, где они хотят. Обычно эти файлы и каталоги доступны только самому приложению (и конечному пользователю root) - кроме тех, что хранятся на SDCard, которые доступны для всех приложений.

ответил Izzy 25 J0000006Europe/Moscow 2013, 19:46:52
6

Ответ на ваш вопрос, который вы задаете, слишком велик. Я могу, однако, дать вам базовый ответ, который охватывает основы.

Существует два вида приложений:
Корневой и не root .

Приложения Root могут в основном хранить /изменять файлы там, где они хотят.

Приложения без root могут хранить или изменять файлы здесь: /sdcard/ и каждой папке, что происходит после.
В основном, установленные приложения хранятся в /sdcard/Android/data или /sdcard/Android/obb.
Некоторые приложения хранят свои файлы сохранения /файлы конфигурации на /sdcard/APPNAME/ или только на /sdcard/

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

ответил Tom 25 J0000006Europe/Moscow 2013, 14:14:22

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132