Подтвердить что ты не робот

Что происходит с базой данных Sqlite при удалении приложения

Я новичок в программировании на Android и пытаюсь обвести вокруг себя это, просто чтобы понять, как все работает.

При создании баз данных Sqlite в приложении для Android, где хранится база данных? Удаляется ли при удалении приложения? Любая информация об этом будет очень полезна в понимании программирования Android для людей, пришедших с фона веб-разработки.

4b9b3361

Ответ 1

Базы данных SQlite - это просто файлы, и они рассматриваются как любой другой файл: они хранятся (по умолчанию) в области личных данных приложения (/data/data/$PACKAGENAME/databases). Они удаляются вместе со всем остальным в области частных данных приложения.

Вы можете создать базу данных на SD-карте, если хотите. Разумеется, они не будут удалены при удалении.

Ответ 2

База данных находится в /data/data/app.package.name/databases. Вы можете получить доступ к этой папке только на эмуляторе или на корневом устройстве (например, с помощью проводника файлов с правами суперпользователя).

При удалении приложения все относительные данные удаляются (включая базы данных)

Ответ 3

Если не указано иное (вашими), приложения сохраняют свои данные под /data/data/<appname>, а базы данных SQLite находятся в /data/data/<appname>/databases. При удалении приложения все дерево каталогов /data/data/<appname> будет удалено, включая ваши базы данных.

Ответ 4

Обычно база данных хранится в

/data/data/package.name.of.your.app/databases

Однако это нехорошо полагаться на это. Это гораздо лучше найти с помощью getDatabasePath на ContextWrapper, например:

File dbFile = getDatabasePath(db_name);

И да, обычно весь каталог /data/data/package.name.of.your.app будет удален, если вы удалите приложение.

Ответ 5

БД, настройки, файлы кэша, файлы Temp хранятся в папке /data/data/app.package.name/ в памяти телефона.

При удалении приложения вся папка с памятью телефона для этого приложения будет полностью удалена.