如何展示一个Realm数据库的内容?

How to display a Realm database content?

我在 Android phone 上有 Realm 数据库。我正在尝试将数据保存到 Realm 数据库,然后从那里获取数据。但我不确定我这样做是否正确,因为它不包含一些数据。我想查看原始状态的记录,以了解我哪里错了。但是 gradle 未能在此基础上构建项目。有人知道如何使用其他工具查看数据吗?谢谢。 gradle-4.4.1

    io.realm:realm-gradle-plugin:5.1.0
    implementation 'com.facebook.stetho:stetho:1.5.0'
    implementation 'com.uphyca:stetho_realm:2.2.0'

Stetho.initialize(
                Stetho.newInitializerBuilder(this)
                        .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
                        .enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this))
                        //.enableWebKitInspector(RealmInspectorModulesProvider.builder(this).build())
                        .build());


buildscript {
    repositories {
        jcenter()
        mavenCentral()
        maven {
            url 'https://maven.google.com'
        }
        maven { url 'https://github.com/WickeDev/stetho-realm/raw/master/maven-repo' }
    }
}
apply plugin: 'com.android.application' //here shows error: Failed to resolve: com
apply plugin: 'io.fabric'

android {

根据 this issue,如果您使用由 WickeDev 管理的较新版本,Stetho-Realm 可与 Realm 4.0.0+ 一起使用:

repositories {
    mavenCentral()
    maven {
        url 'https://maven.google.com'
    }
    jcenter()
    maven { url 'https://github.com/WickeDev/stetho-realm/raw/master/maven-repo' }
}

dependencies {
    implementation 'com.uphyca:stetho_realm:2.3.0'
}
val realmInspector = RealmInspectorModulesProvider.builder(this)
            .withDeleteIfMigrationNeeded(true)
            .build()

Stetho.initialize(Stetho.newInitializerBuilder(this)
            .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
            .enableWebKitInspector(realmInspector)
            .build())

还有另一种手动方式可以查看 Realm 数据库的记录,但您需要 Mac OS。

1- 运行 您在模拟器中的应用。

2- 转到工具 -> Android 设备监视器

3- 找到您应用的包名,现在您可以看到您应用的所有文件。

4- 找到领域文件并通过将其导出到您的计算机来复制它。

5- 现在在 MAC OS 上安装 Realm Browser

6- 通过 Realm 浏览器打开复制的数据库文件。

您可以看到您数据库的所有表和记录。