Realm - Realm浏览器

可以下载单机版Realm浏览器来读取和编辑.realm数据库。

这里写图片描述

使用Tools > Generate demo database选项,能使用简单数据生成一个测试数据库。

怎样在Realm浏览器中查看你的.realm文件?

方法1

当前Realm浏览器不支持直接访问设备上的数据库,所以需要先从模拟器或设备上拷贝出数据库,然后查看它。使用下面的adb命令拷贝数据库:

adb pull /data/data/<packagename>/files/ .

这个命令将拉取所有使用Realm.getInstance(getContext())Realm.getInstance(new RealmConfiguration.Builder(context).build())方法创建的realm文件。默认的数据库命名是default.realm。
注意,该方法只对模拟器或被root的设备有效。

方法2

如果你懒于每次使用adb获取realm数据库文件,你可以在你的代码中增加一个导出功能。
下面是一个导出realm文件,并发送带有realm文件附件邮件的示例:

public void exportDatabase() {

    // init realm
    Realm realm = Realm.getInstance(getActivity());

    File exportRealmFile = null;
    try {
        // get or create an "export.realm" file
        exportRealmFile = new File(getActivity().getExternalCacheDir(), "export.realm");

        // if "export.realm" already exists, delete
        exportRealmFile.delete();

        // copy current realm to "export.realm"
        realm.writeCopyTo(exportRealmFile);

    } catch (IOException e) {
        e.printStackTrace();
    }
    realm.close();

    // init email intent and add export.realm as attachment
    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("plain/text");
    intent.putExtra(Intent.EXTRA_EMAIL, "YOUR MAIL");
    intent.putExtra(Intent.EXTRA_SUBJECT, "YOUR SUBJECT");
    intent.putExtra(Intent.EXTRA_TEXT, "YOUR TEXT");
    Uri u = Uri.fromFile(exportRealmFile);
    intent.putExtra(Intent.EXTRA_STREAM, u);

    // start email intent
    startActivity(Intent.createChooser(intent, "YOUR CHOOSER TITLE"));
}

不要忘了在Manifest文件中增加以下权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

当前单机版Realm浏览器只有Mac版,如果是其他平台你可以使用Stetho-Realm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值