Realm实战总结--数据浏览

本文使用到的工具是Stetho,它是Facebook提供的桥接安卓调试和 Chrome浏览器的组件,可谓神器。

配置依赖

在app目录下的build.gradle添加以下内容:

	buildscript {
	    repositories {
			......
	        maven {
	            url 'https://github.com/uPhyca/stetho-realm/raw/master/maven-repo'
	        }
	    }
	}

	dependencies {
		......
	    //在chrome上查看realm
	    debugCompile 'com.facebook.stetho:stetho:1.3.1'
	    debugCompile 'com.uphyca:stetho_realm:0.9.0'
	}

如果你的项目在build.gradle(与settings.gradle同级的那个)配置了,即

	allprojects {
	    repositories {
	        jcenter()
	        ......
	    }
	}

那就不能只在app目录下的build.gradle配置Stetho的Maven库依赖,否则会不生效的。这个时候需要在allprojects里面添加相应的Maven库依赖,如下:

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

Debug模式配置

因为要使用Stetho还需要依赖额外的库,这样的调试主要是在debug模式下进行,一般在Release版本就不需要引入这样的库了,会增加app大小,也没必要。所以我们可以通过在app的src目录下,新建一个与main同级的debug目录,然后建相同的包名,在此包名下新建一个TestDebugApplication,它继承自TestApplication,即main里面建的自己的Application。

目录结构如下图所示:

TestDebugApplication的内容:

	public class TestDebugApplication extends TestApplication {
	    @Override
	    public void onCreate() {
	        super.onCreate();
	        //在chrome上查看realm数据
	        Stetho.initialize(
	                Stetho.newInitializerBuilder(this)
	                        .enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
	                        .enableWebKitInspector(RealmInspectorModulesProvider.builder(this).build())
	                        .build());
	    }
	}

再在debug/java/下创建一个AndroidManifest.xml文件,内容如下:

	<?xml version="1.0" encoding="utf-8"?>
	<manifest
	    package="com.meizu.helloworld"
	    xmlns:android="http://schemas.android.com/apk/res/android"
	    xmlns:tools="http://schemas.android.com/tools">

	    <application
	        tools:replace="android:name"
	        android:name=".TestDebugApplication"/>
	</manifest>

配置好以上操作后,就可以只在debug模式下启动Stetho调试了。

Chhrome查看Realm

注意事项:

  • ubuntu12.04下的Chrome版本过低,我的才39.xxx,是无法进行Realm查看的。
  • 需要穿越伟大的城墙,你懂的

下面举例所使用的Chrome版本是52.0.2743.116 m (64-bit)。
手机连上USB,运行程序,在Realm中写入需要保存的数据,然后打开Chrome浏览器,在地址栏输入“chrome://inspect”,即可看到你的设备信息和正在运行的调试程序。

然后点击上图红色箭头所指的inspect,即会弹出Developer Tools界面,然后点击工具栏的Resources,在左边栏可以看到一个WebSQL选项,打开即可看到自己的Realm数据库了。如下图:

如果输入chrome://inspect后无法看到自己的设备信息或调试程序,请确保你的调试程序是正在运行的,再到Chrome的自定义与控件(在浏览器的右上角)->更多工具->开发者工具下找找看有没有。

感兴趣的同鞋还可以看Realm相关的文章:

文章目录
  1. 1. 配置依赖
  2. 2. Debug模式配置
  3. 3. Chhrome查看Realm
|