作为android开发,必须经常用到网络调试,为了方便开发,经常用到抓包工具,比如android开发经常用到的Fidder,但是说实话,这东西配置起来很麻烦,配置代理、证书各种操作。

所以引入另外一个抓包神器,stetho;

stetho是Facebook开源的一个Android调试工具,项目地址:https://github.com/facebook/stetho,通过Stetho,开发者可以使用chrome的inspect功能,对Android应用进行调试和查看。

stetho提供的功能主要有:

  • Network Inspection:网络抓包,如果你使用的是当前流行的OkHttp或者Android自带的 HttpURLConnection,你可以轻松地在chrome inspect窗口的network一栏抓到所有的网络请求和回包,还用啥Postman,还用啥Fiddler哦(开个玩笑,一些场合还是需要用的,毕竟Stetho Network Inspection 只是用来查看回报和发送数据是否有误,在开发初期,调试API还是用Postman快一点)
  • Database Inspection:数据库查看,可以直接看到当前应用的sqlite数据库,而且是可视化的,不需要再下什么奇怪的工具或者用命令行看了。这个确实非常棒!
  • View Hierarchy:布局层级查看,免去使用查看布局边界的花花绿绿带来的痛苦和卡顿,而且能看到每个view和layout的各类属性。
  • Dump App:命令行拓展,构造了一个命令行与Android App的交互通道,在命令行输入一行命令,App可以收到并且在命令行上进行反馈输出。
  • Javascript Console:Javascript控制台,在inspect的console窗口,输入Javascript可以直接进行Java调用。使用这个功能,得先引入facebook/stethostetho-js-rhino和mozilla/rhino。

使用过程:

1.添加依赖

  //抓包工具implementation 'com.facebook.stetho:stetho:1.5.0'implementation 'com.facebook.stetho:stetho-okhttp3:1.5.0'

2.初始化,建议再application中进行初始化

 Stetho.initialize(Stetho.newInitializerBuilder(this).enableDumpapp(Stetho.defaultDumperPluginsProvider(this)).enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this)).build());
3.添加拦截器
   OkHttpClient mOkHttpClient=new OkHttpClient.Builder().connectTimeout(HttpConfig.HTTP_TIME, TimeUnit.SECONDS).readTimeout(HttpConfig.HTTP_TIME, TimeUnit.SECONDS).writeTimeout(HttpConfig.HTTP_TIME, TimeUnit.SECONDS).addInterceptor(InterceptorUtil.HeaderInterceptor()).addInterceptor(InterceptorUtil.LogInterceptor())//添加日志拦截器.addNetworkInterceptor(new StethoInterceptor()) //添加抓包工具.build();

注意核心的一句话是

.addNetworkInterceptor(new StethoInterceptor()) //添加抓包工具

4.打开谷歌浏览器

输入chrome://inspect/#devices

5.点击inspect进入(注意第一次可能进不去,需要使用vpn)

6.可以进行愉快的抓包了,包括可以看到数据库相关文件

7.查看数据库文件

感觉用来这个神器之后,Fidder我就不再使用了,感觉特别好用

Stetho调试神器使用相关推荐

  1. stetho 调试数据库_stetho是适用于android应用程序的最佳调试工具

    stetho 调试数据库 As Android developers, our development life often involves integrating API or web servi ...

  2. python 如何边改代码边调试_Python 代码调试神器:PySnooper

    给大家推荐本我自己写的电子书<PyCharm中文指南>,把各种 PyCharm 的高效的使用技巧用GIF动态图的形式展示出来.有兴趣的可以看它的在线文档: http://pycharm.i ...

  3. json.tojsonstring 导致cpu飙高_阿里调试神器立功了!进程导致Kubernetes节点CPU飙高的排查与解决...

    来源:https://www.cnblogs.com/maxzhang1985/p/12673160.html 一.发现问题 在一次系统上线后,我们发现某几个节点在长时间运行后会出现CPU持续飙升的问 ...

  4. Vue调试神器vue-devtools - 插件下载安装

    文章目录 Google如何安装调试Vue的神器`vue-devtools` ? 安装介绍: demo实例 - 演示代码: 相关文章链接: 1. https://github.com/vuejs/vue ...

  5. 微信公众号(移动端网页)必备的调试神器

    1.移动端调试神器vConsole 由于在移动端无法打开控制台,所以想办法打印调试console的数据一直苦恼.之前用的是chrome的inspect调试,但是只能使用移动版的chrome查看数据,兼 ...

  6. 嵌入式调试神器-虚拟示波器之JScope

    调试神器-虚拟示波器之JScope 在进行嵌入式开发过程中,需要查看某些实时变化的变量,以MDK为例我们通常都是进入DEBUG模式下去肉眼观察,这种方式不太人性化,也比较容易错失掉许多细节.为此我介绍 ...

  7. 电子工程师必备的调试神器—H7-TOOL

    摘要:今天给小伙伴推荐一款好用的调试神器-H7-TOOL.相信搞嵌入式单片机的都知道正点原子和野火,其实还有一家做单片机也很强--安富莱电子.今天说的就是武汉安富莱电子家的一款开源的H7-TOOL开发 ...

  8. web移动端调试神器Eruda

    在Web开发过程中,对html页面进行开发和调试的时候都会用到浏览器提供的调试工具,小编我最常用的就是Chrome浏览器自带的开发者工具了,可以很方便的对JS代码进行断点调试,log也很方便.但是在移 ...

  9. vue 代码调试神器

    一.序 工欲善其事,必先利其器.作为一名资深程序员,相信必有一款调试神器相伴左右,帮助你快速发现问题,解决问题.作为前端开发,我还很年轻,也喜欢去捣鼓一些东西,借着文章的标题,先提一个问题:大家目前是 ...

最新文章

  1. 业界资讯: Air 2.0 beta 版本 发布
  2. 定位的四个点怎么打_别被忽悠了,轮胎动平衡和四轮定位一定要区分清楚
  3. 从URL中获取搜索关键字
  4. Py之pandas:字典格式数据与dataframe格式数据相互转换并导出到csv
  5. 全球及中国碳化硅 (SiC) 肖特基二极管行业竞争潜力与供应规划研究报告2022版
  6. Chrome浏览器插件安装位置
  7. UVa 1368 - DNA Consensus String
  8. Android gravity和layout_gravity的区别
  9. python新手入门项目推荐_推荐:一个适合于Python新手的入门练手项目
  10. jboss入门_JBoss Forge NetBeans集成–入门
  11. 8 操作系统第二章 进程管理 信号量 PV操作 用信号量机制实现 进程互斥、同 步、前驱关系
  12. CSS 类选择器详解——CSS 多类选择器
  13. php上传图片到远程服务器并返回图片地址到本地显示
  14. 智能会议系统(15)--- linphone-android 业务流程
  15. click Documenting Scripts
  16. MariaDB设置root用户密码
  17. Linux内核分析第一周——计算机是如何工作的
  18. 20211118:力扣第267周周赛(上)
  19. c/c++ 宏中#和##的用法
  20. 《CCNA学习指南:数据中心(640-911)》——2.5 考试要点

热门文章

  1. 在北京西单图书大厦签名售书
  2. 传奇手游怎么开服?需要投资多少?需要那些东西?
  3. 当前NBIoT设备的省电技术之PSM/DRX/eDRX
  4. 《如何戒掉坏习惯》读书笔记
  5. FSL 功能磁共振影像分析: single-session
  6. pixhawk(PX4)的一些论坛网站(包括中文版的PX4用户手册和PX4开发手册)
  7. 利用mininet进行链路拥塞造成数据丢包的实验
  8. ETSI开源MANO发布首个版本
  9. 基于自适应形态学的探月雷达噪声压制方法
  10. 使用python控制其他软件运行_使用Python与其他程序进行交互