Stetho调试神器使用
作为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调试神器使用相关推荐
- stetho 调试数据库_stetho是适用于android应用程序的最佳调试工具
stetho 调试数据库 As Android developers, our development life often involves integrating API or web servi ...
- python 如何边改代码边调试_Python 代码调试神器:PySnooper
给大家推荐本我自己写的电子书<PyCharm中文指南>,把各种 PyCharm 的高效的使用技巧用GIF动态图的形式展示出来.有兴趣的可以看它的在线文档: http://pycharm.i ...
- json.tojsonstring 导致cpu飙高_阿里调试神器立功了!进程导致Kubernetes节点CPU飙高的排查与解决...
来源:https://www.cnblogs.com/maxzhang1985/p/12673160.html 一.发现问题 在一次系统上线后,我们发现某几个节点在长时间运行后会出现CPU持续飙升的问 ...
- Vue调试神器vue-devtools - 插件下载安装
文章目录 Google如何安装调试Vue的神器`vue-devtools` ? 安装介绍: demo实例 - 演示代码: 相关文章链接: 1. https://github.com/vuejs/vue ...
- 微信公众号(移动端网页)必备的调试神器
1.移动端调试神器vConsole 由于在移动端无法打开控制台,所以想办法打印调试console的数据一直苦恼.之前用的是chrome的inspect调试,但是只能使用移动版的chrome查看数据,兼 ...
- 嵌入式调试神器-虚拟示波器之JScope
调试神器-虚拟示波器之JScope 在进行嵌入式开发过程中,需要查看某些实时变化的变量,以MDK为例我们通常都是进入DEBUG模式下去肉眼观察,这种方式不太人性化,也比较容易错失掉许多细节.为此我介绍 ...
- 电子工程师必备的调试神器—H7-TOOL
摘要:今天给小伙伴推荐一款好用的调试神器-H7-TOOL.相信搞嵌入式单片机的都知道正点原子和野火,其实还有一家做单片机也很强--安富莱电子.今天说的就是武汉安富莱电子家的一款开源的H7-TOOL开发 ...
- web移动端调试神器Eruda
在Web开发过程中,对html页面进行开发和调试的时候都会用到浏览器提供的调试工具,小编我最常用的就是Chrome浏览器自带的开发者工具了,可以很方便的对JS代码进行断点调试,log也很方便.但是在移 ...
- vue 代码调试神器
一.序 工欲善其事,必先利其器.作为一名资深程序员,相信必有一款调试神器相伴左右,帮助你快速发现问题,解决问题.作为前端开发,我还很年轻,也喜欢去捣鼓一些东西,借着文章的标题,先提一个问题:大家目前是 ...
最新文章
- 业界资讯: Air 2.0 beta 版本 发布
- 定位的四个点怎么打_别被忽悠了,轮胎动平衡和四轮定位一定要区分清楚
- 从URL中获取搜索关键字
- Py之pandas:字典格式数据与dataframe格式数据相互转换并导出到csv
- 全球及中国碳化硅 (SiC) 肖特基二极管行业竞争潜力与供应规划研究报告2022版
- Chrome浏览器插件安装位置
- UVa 1368 - DNA Consensus String
- Android gravity和layout_gravity的区别
- python新手入门项目推荐_推荐:一个适合于Python新手的入门练手项目
- jboss入门_JBoss Forge NetBeans集成–入门
- 8 操作系统第二章 进程管理 信号量 PV操作 用信号量机制实现 进程互斥、同 步、前驱关系
- CSS 类选择器详解——CSS 多类选择器
- php上传图片到远程服务器并返回图片地址到本地显示
- 智能会议系统(15)--- linphone-android 业务流程
- click Documenting Scripts
- MariaDB设置root用户密码
- Linux内核分析第一周——计算机是如何工作的
- 20211118:力扣第267周周赛(上)
- c/c++ 宏中#和##的用法
- 《CCNA学习指南:数据中心(640-911)》——2.5 考试要点