如何在 Android 手机上实现抓包?

两种方式,各有优劣且互补,一般第一种即可,对于不走代理的 App 选择第二种方式
第一种 Fiddler
利用 Fiddler 抓包,适合大多数走代理的应用,优点 (1) 无需 root (2) 对 Android 和 Iphone 同样适用 (3) 操作更简单方便(第一次安装配置,第二次只需设置代理即可) (4) 数据包的查看更清晰易懂,Fiddler 的 UI 更简单明了 。可见:http://www.trinea.cn/android/android-network-sniffer/

Mac 下可以使用 Charles ,破解版的 Licence Key:http://www.trinea.cn/android/android-network-sniffer/

第二种 Tcpdump
对于不走代理的 App 可以利用 tcpdump 抓取 andorid 手机上网络数据请求,利用 Wireshark 查看,可见:如何利用Tcpdump抓取andorid网络数据请求,Wireshark查看

电脑上安装个Charles,然后在Android手机上设置下代理,就可以在Charles上监听到了。想看https的请求就稍微麻烦一些些,手机上得先安装下证书,具体可以参考Using Charles Proxy to Optimize Mobile App Performance

  • 有人提到Fiddler,但是Fiddler是针对HTTP
  • 有人提到设代理,但是Android并非所有App通讯都会像http请求乖乖的走代理,不是root不root的问题,ios同理
  • 有人提到tcpdump,但是tcpdump不能实时看通讯过程


发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

(Spamcheck Enabled)