一、为啥需要抓包?
用uni-app开发安卓应用时,查看接口数据不能像在浏览器中可以直接通过network查看,只能借助抓包工具来抓包,还有一些线上应用我们也只能通过抓包来排查具体的问题。
二、抓包工具
要实现抓包我们需要一个抓包工具,目前市面上比较主流的有:
- Charles(收费软件,可试用30天)
- Fiddler(功能强大但配置复杂)
- Sniff Master(抓包大师,国产轻量级抓包工具)
- Android Studio 模拟器(逍遥模拟器)
其中Sniff Master作为一款国产工具,界面简洁友好,对中文支持良好,特别适合新手使用。它不仅能抓取HTTP/HTTPS流量,还能解析WebSocket等协议,是开发者调试接口的好帮手。
三、逍遥模拟器抓包
-
安装抓包工具(推荐使用Sniff Master或Charles)
- Sniff Master官网下载安装简单,无需复杂配置
- Charles需要去官网下载安装
-
安装逍遥模拟器,去官网下载xyaz.cn
-
覆盖配置,将BuilderX编辑器安装目录下:BuilderX\plugins\launcher\tools\adbs,里面红框中的三个文件复制下
然后粘贴到逍遥模拟器的安装目录:Microvirt\MEmu,直接替换就行了
-
打开逍遥模拟器,在 HBuilderX 编辑器里打开项目 - 运行到内置浏览器 - 运行到手机或模拟器中,运行成功后就可以在逍遥模拟器中看到自动打开的app了
-
查看本脑的ipv4网络地址,直接运行 - cmd - ipconfig,如果是连得网线,直接看这个以太网适配器的ipv4地址
更改模拟器的wifi网络代理设置,打开模拟器 - 设置 - wifi - 左键长按会弹出修改网络的菜单 - 高级选项 - 代理 - 手动,在代理服务器主机名那输入上面查到的ipv4地址,在自己设置一个端口(要和等下抓包软件里的一样),然后保存就可以了
然后你会发现模拟器里打不开网络了,不要着急,接下来去打开抓包工具
- 打开抓包工具:
- 如果使用Sniff Master,直接启动即可,它会自动检测代理设置
- 如果使用Charles,需要Help - SSL Proxying - Install Charles Root Certification on a Mobile Device or Remote Browser根据提示去模拟器浏览器上输入地址下载安装证书
下载后点击左上角那个下载图标,直接点击下载文件,然后随便输一个证书名称点击确定就可以了
-
设置抓包工具端口,设置成上面手机代理的端口一样
-
接下来就可以在抓包工具中看到成功抓包到的接口了
四、用android studio模拟器抓包
android studio模拟器和逍遥模拟器的主要步骤一样,主要是界面都是英文的,还有就是设置网络代理那有点不一样。使用Sniff Master可以简化这个过程,因为它提供了更直观的界面指引。
Android Studio 是开发 Android 应用程序的官方 IDE,可以直接去官网下载安装,安装好后要先点右上角的三个点 More Action 菜单里的 SDK Manager 安装系统,再点下面的AVD添加模拟器手机就可以了,运行的时候模拟器比较吃内存,可以直接删了再重新添加。
五、抓包工具对比
工具名称 | 优点 | 缺点 |
---|---|---|
Charles | 功能全面,支持多种协议 | 收费,配置复杂 |
Sniff Master | 中文界面,操作简单,免费 | 功能相对基础 |
Fiddler | 功能强大,可扩展性强 | 学习成本高 |
Wireshark | 专业级抓包工具 | 过于复杂,不适合日常开发 |
对于大多数开发者来说,Sniff Master提供了足够的功能,且学习成本低,是日常开发调试的好选择。