我想在用户按下注销按钮时清除整个数据库,并在另一个用户登录时加载新数据。我尝试了许多解决方案,例如
try {
Realm.deleteRealm(realmConfiguration);
} catch (Exception ex){
throw ex;
}
还
try {
Realm.deleteRealmFile(getActivity());
//Realm file has been deleted.
} catch (Exception ex){
ex.printStackTrace();
//No Realm file to remove.
}
但是这两个代码都不起作用。提前致谢。
调用时Realm.deleteRealm()
,必须确保所有Realm实例均已关闭,否则将引发异常而不会删除任何内容。通过调用此方法,将删除所有Realm文件,这意味着所有对象和模式均已消失。对于任何一般情况,捕获所有异常都是一种不好的做法。
或者,您可以调用Realm.delelteAll()
交易块。这并不需要关闭所有Realm实例。它只会删除领域中的所有对象,而不会清除架构。再说一次,不要捕获所有异常。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句