前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >android 调试工具之facebook stetho介绍

android 调试工具之facebook stetho介绍

作者头像
xiangzhihong
发布2018-02-06 10:46:10
1.2K0
发布2018-02-06 10:46:10
举报
文章被收录于专栏:向治洪

概述

Stetho 是 Facebook 开源的一个 Android 调试工具。是一个 Chrome Developer Tools 的扩展,可用来检测应用的网络、数据库、WebKit 、SharePreference等方面的功能。开发者也可通过它的 dumpapp 工具提供强大的命令行接口来访问应用内部。推荐它的原因是不需要root,就可以实现上面的功能。配置好之后,在Chrome地址栏输入chrome://inspect 既可。

这里写图片描述
这里写图片描述

查看网络请求(类似于fiddler或者charles):

这里写图片描述
这里写图片描述

查看数据库等

这里写图片描述
这里写图片描述

使用

使用主要分为4部:

1. 项目添加依赖

代码语言:javascript
复制
 compile ‘com.facebook.stetho:stetho:1.3.1‘

2. 初始化 Stetho

代码语言:javascript
复制
  public class MyApplication extends Application { 
      public void onCreate() { 
        super.onCreate(); 
        Stetho.initializeWithDefaults(this); 
        }
    }

3. 修改网络请求(可自行修改app的请求方式)

对于请求的方式,可以根据自己项目实际网络的使用情况来选择,这里比如我使用的okHttp。

代码语言:javascript
复制
new OkHttpClient.Builder() .
    addNetworkInterceptor(new StethoInterceptor()) .build()

运行项目

在chrome中访问 chrome://inspect。然后找到你的项目 点击 inspect就可以开始调试了。

自定义dumpapp 插件

定义插件是扩展dumpapp系统的首选方式,可以轻松地添加在配置。其使用也是非常的简单,如

代码语言:javascript
复制
Stetho.initialize(Stetho.newInitializerBuilder(context)
    .enableDumpapp(new MyDumperPluginsProvider(context))
    .build())

private static class MyDumperPluginsProvider
    implements DumperPluginsProvider {
  public Iterable<DumperPlugin> get() {
    ArrayList<DumperPlugin> plugins = new ArrayList<DumperPlugin>();
    for (DumperPlugin defaultPlugin :
        Stetho.defaultDumperPluginsProvider(mContext).get()) {
      plugins.add(defaultPlugin);
    }
    plugins.add(new MyDumperPlugin());
    return plugins;
  }
}

至于MyDumperPlugin的编写,可以参考官方的写法,插件的使用是与dumpapp工具结合的,而上文中的dumpapp只是截了一张图,却没有解释如何使用,其实该插件位于官方项目的scripts目录下,可以自行研究其原理。

附; facebook/stetho 教程涉及源码

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-02-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • 使用
    • 1. 项目添加依赖
      • 2. 初始化 Stetho
        • 3. 修改网络请求(可自行修改app的请求方式)
          • 运行项目
            • 自定义dumpapp 插件
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档