如何截断Realm Android中的所有表 [英] How to truncate all tables in realm android

查看:42
本文介绍了如何截断Realm Android中的所有表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我试图在用户注销时在android中截断所有表.我仅使用领域默认路径.

Hi im trying to truncateall tables in android when a user logs out. im using realms default path only.

realm = Realm.getInstance(getApplicationContext());

public void clearDB() {
    Realm.deleteRealmFile(instance);
}

推荐答案

更新

使用realm.delete(Foo.class)代替,因为已弃用clear().从0.91.0 所有@Deprecated方法都将被删除.

Use realm.delete(Foo.class) instead as clear() is deprecated. From 0.91.0 all @Deprecated methods will be removed.

来自Realm的基督徒. 只要您关闭了所有打开的Realm实例,该方法就会起作用. 另一种方法是像这样清除所需的表:

Christian from Realm here. That approach will work as long as you have closed all open Realm instances. Another approach is clearing the tables you want like this:

realm = Realm.getInstance(getApplicationContext());

public void clearDB() {
  realm.executeTransaction(new Realm.Transaction() {
     @Override
     public void execute(Realm realm) {
        realm.clear(Foo.class);
        realm.clear(Bar.class);
     }
  });
}

您可以在此处了解更多信息: http://realm.io/docs/java/0.77.0/api/io/realm/Realm.html#clear(java.lang.Class)

You can read more here: http://realm.io/docs/java/0.77.0/api/io/realm/Realm.html#clear(java.lang.Class)

这篇关于如何截断Realm Android中的所有表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆