#android #database #sqlite #preserve
#Android #База данных #sqlite #сохранить
Вопрос:
Я создал простое приложение базы данных с использованием SQLite, которое сначала создает базу данных, а затем позволяет пользователям вставлять и просматривать вставленные записи. Но когда я очищаю данные из настроек приложения телефона Android, данные базы данных также очищаются. Почему это так и есть ли какой-либо способ сохранить данные, даже если пользователь удаляет их из настроек?
Комментарии:
1. Сохраните ее на SD-карте или, для Android 2.2 , включите агент резервного копирования для службы резервного копирования Android, предоставляемой Google?
Ответ №1:
Когда вы создаете базу данных, Android создает новый файл базы данных в папке /databases. При удалении данных Android отменяет все файлы, созданные в папке приложения, включая папку /database. Вы должны использовать постоянную базу данных, такую как поставщик контента
Комментарии:
1. ContentProvider ни в коем случае не является постоянным хранилищем, обычно он использует SQLiteOpenHelper, который с радостью поместит свой файл базы данных в папку базы данных вашего приложения, который будет удален при запуске вашего приложения.
Ответ №2:
Вы можете использовать контент-провайдера, чтобы он всегда сохранял данные, а также позволял вам обмениваться данными между различными приложениями :
Проверьте это контент-провайдеров.
Также проверьте этот пример для использования контент-провайдера.
Комментарии:
1. Поставщик контента — это API. Он не будет «сохранять данные все время».