Как удалить базу Sqlite из приложения, если решил отказаться от её использования?

Есть приложение уже на маркете. База используется для функционала, который решил убрать.
Надо как-то при обновлении взять из неё несколько данных и удалить.

Как это правильно сделать?

Пока придумал только вариант с флагом в SharedPreferences.

- Если его нет, то подключить базу,
- в ней проверить прежнюю версию, если меньше текущей, то забрать данные, удалить базу,
- выставить флаг.
- При следующих запусках базу не подключать.
- Когда все пользователи перейдут на новую версию, проверку флага убрать и базу вырезать совсем.
  • Вопрос задан
  • 1478 просмотров
Решения вопроса 2
Valens254
@Valens254
Разработчик программного обеспечения
Если использовался стандартный SQLiteOpenHelper, то задача решается добавлением нужного кода в метод onUpgrade
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    if (oldVersion == 1 && newVesion == 2) {
        moveOldDataToNewStructure();
        deleteOldDataBase();
    }
}
Ответ написан
Комментировать
@YuryBorodkin
Android dev
ну да через shared prefs и делается обычно.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы