Я использую Realm для Android для хранения некоторых данных. Когда пользователь нажимает кнопку выхода из системы, я хочу очистить всю базу данных Realm. Для этого у меня есть следующий фрагмент кода:
realm.close();
realm.deleteRealmFile(this);
goToLoginActivity();
Теперь проблема в моей функции onResume. Я получаю следующее исключение:
Вызвано: java.lang.IllegalStateException: этот экземпляр Realm уже закрыт, что делает его непригодным.
Мой код onResume выглядит следующим образом:
@Override
protected void onResume() {
super.onResume();
// I'm trying to check if the realm is closed; this does not work
if (realm == null) {
realm = Realm.getInstance(this);
}
// Do query using realm
}
Как проверить, закрыт ли объект области? Альтернативно, есть ли лучший способ очистить базу данных, чем удалить файл области?
-
Изменить: просто увидел Как я могу легко удалить все объекты в Realm для iOS. Любое слово о том, когда API-интерфейс deleteAllObjects будет доступен для Android? На момент написания Android Android был версии 0.80.0, а API доступен в iOS в 0.87.0.