public void removeAllData() {
Realm realm = Realm.getInstance(realmConfiguration);
try {
realm.close();
new SessionManager(this).setLogin(false);
} catch (IllegalStateException realmISE) {
realm.deleteRealm(realmConfiguration);
} finally {
if (realm != null) {
realm.close();
}
}
}
此方法删除了Realm Database的所有数据,但它保留了estructure。
此后,我已经实现了另一种方法来获取它,但是当应用程序运行时通知异常。
public void deleteDatabase(){
try {
realm.close();
Realm.deleteRealm(realm.getConfiguration());
//Realm file has been deleted.
} catch (Exception ex){
ex.printStackTrace();
//No Realm file to remove.
}
}
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.controllers.activitys.LoginActivity}: io.realm.exceptions.RealmMigrationNeededException: RealmMigration must be provided
我不需要执行任何迁移,因为那时我将从头开始创建其他数据库。
是否有替代方法可以完全删除数据库,而不仅仅是数据?