介绍一个Android的调试工具
之前一直用AndroidStudio的自带的工具进行调试,现在FaceBook早在前几年推出了一款提示工具——Stetho.
官方定义:
A debug bridge for Android applications
Android调试工具。
我们先看效果图吧:
网络查看:
数据库查看:
sharedPreference的存储
另外还有图片等一些的查看。
用法
第一步 配置
// Gradle dependency on Stetho
dependencies {
compile 'com.facebook.stetho:stetho:1.4.2'
}
<dependency>
<groupid>com.facebook.stetho</groupid>
<artifactid>stetho</artifactid>
<version>1.4.2</version>
</dependency>
如果你项目中使用的请求网络是OKHTTP则添加:
dependencies {
compile 'com.facebook.stetho:stetho-okhttp3:1.4.2'
}
如果的气你去网络是HttpURLConnect的话,则添加:
dependencies {
compile 'com.facebook.stetho:stetho-urlconnection:1.4.2'
}
第二步进行初始化Stetho
public class MyApplication extends Application{
private static MyApplication application;
@Override
public void onCreate() {
super.onCreate();
application = this;
ActiveAndroid.initialize(this);
Stetho.initialize(
Stetho.newInitializerBuilder(this)
.enableDumpapp(
Stetho.defaultDumperPluginsProvider(this))
.enableWebKitInspector(
Stetho.defaultInspectorModulesProvider(this))
.build());
}
public static MyApplication getInstance(){
return application;
}
@Override
public void onTerminate() {
super.onTerminate();
ActiveAndroid.dispose();
}
}
第三步进行
第三方的网络请求库,都可以添加拦截器,然后就可以在拦截器中把
Request Url
Request Headers
Request Body
Response Body
Response Code
之类都打印出来看
比如:
private void getFromNetwork() {
OkHttpClient client = new OkHttpClient();
client.networkInterceptors().add(new StethoInterceptor());
Request request = new Request.Builder()
.url("http://blog.youkuaiyun.com/androidstarjack")
.build();
Response response = null;
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Request request, IOException e) {
}
@Override
public void onResponse(Response response) throws IOException {
String body = response.body().string();
Message message = handler.obtainMessage();
message.what=NETWORK;
message.obj=body;
handler.sendMessage(message);
}
});
}
第四步进行
运行App, 打开Chrome输入chrome://inspect/#devices(跟上文查看数据库内容的步骤一样)
亲测在360浏览器 上运行也能成功。
注意:
如果您的第一次出现空白界面则需要进行翻墙。
这样就OK了。
以前是这样做处理的
查看sqlite里面的数据都要通过这个Android Device Monitor找到/data/data/com.xxx.xxx/databases里面的db文件,然后导出到PC上,最后用PC上的数据库工具打开来查看。
或者使用第三方的工具去查看(在手机root的前提下才能使用)
连接上电脑,用360手机助手,或者是豌豆荚 ,应用宝之类的第三方的PC软件去查看工具。
现在有了Stetho是不是方面的多了?
用例项目地址:https://github.com/androidstarjack/StethoDemo2
如果你觉得此文对您有所帮助,欢迎入群 QQ交流群 :232203809
微信公众号:终端研发部
(欢迎关注学习和交流)