Мое приложение использует шаблон SyncAdapter
, храня учетные данные пользователя, используя AccountManager
и ContentProvider
для хранения данных в БД.
Когда account
удаляется, я могу удалить базу данных, используя подход, описанный в этом вопросе. БД удаляется, выполнив:
boolean deleted = mContext.deleteDatabase(DatabaseHelper.DATABASE_NAME);
Это работает нормально, но когда я снова вхожу в систему, все по-прежнему там. Такое ощущение, что ContentProvider
не знает, что БД была удалена.
В этом ответе Иназарук говорит:
Вам нужно убедиться, что вы убили процесс, в котором размещается ContentProvider, который использует этот конкретный файл базы данных. И только потом удалять.
Убивать процесс, чтобы очистить БД, не кажется правильным.
Есть ли что-нибудь получше?
delete from table;
- person Macarse   schedule 08.08.2012