一、素材来源

https://www.zhihu.com/question/20467503

二、方法整理

2.1 方式1:Packet Capture + HTTP Injector

使用于在手机端操作,可满足简单需求,无需root

2.2 方式2:tcpdump

https://www.zhihu.com/question/20467503/answer/86760222
答案里演示的感觉很极客,界面就是一个命令行的窗口,但是看起来好高端的样子~~~
下次有机会,给大家亲测一下
http://www.trinea.cn/android/tcpdump_wireshark/

2.3 方式3:Fiddler

优点

2.4 方式4: wireshark + wifi分享软件

操作步骤

  • 下载 Wireshark ,支持800多种通讯协议
  • 无线网卡建立虚拟AP
  • 连接wifi,直接用wireshark抓包,一切通讯尽收眼底

2.5 方式5: 大神写的app

我写了一个软件,你可以安装一下,启动抓包完成后通过邮件把码流发给你,你用wireshark打开就可以看到了。下载地址为 http://apk.gfan.com/Product/App328379.html

2.6 方式6: Stetho + Chrome dev tools

http://facebook.github.io/stetho/
https://www.youtube.com/watch?v=iyXpdkqBsG8

2.7 方式7: charles

mac上推荐使用

2.8 仅供参考的方法

作者:独奏
链接:https://www.zhihu.com/question/20467503/answer/22758575
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  1. Android手机需要先获得root权限。一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得)。在终端模拟器界面输入su并回车,若报错则说明未root,若命令提示符从$变#则为rooted;
  2. 如果Android手机尚未root,可通过superoneclick或其它方法进行root处理(需要先安装Microsoft .NET Framework)。Superoneclick刷root权限教程:(http://soft.shouji.com.cn/news/501.shtml
  3. 需要先获得 Android SDK
  4. 需要获得tcpdump软件,获取地址(http://www.strazzere.com/android/tcpdump)

抓包步骤

  1. 将Android手机与电脑USB相连,打开windows命令提示符窗口
  2. 将tcpdump程序copy至android手机(该命令前面那个目录文件为本地地址,后面那个目录为目的手机端地址)

    C:\android-sdk-windows\platform-tools>adb push c:/tcpdump /data/local/tcpdump

  3. 修改tcpdump的权限

    C:\android-sdk-windows\platform-tools>adb shell
    #chmod 777 /data/local/tcpdump

  4. 进入root权限

    C:\android-sdk-windows\platform-tools>adb shell
    $ su

在运行su指令后,手机终端桌面会出现相应提示信息以确认您对root操作的认可。

  1. 运行tcpdump,输入以下命令启动抓包。

    /data/local/tcpdump -p -vv -s 0 -w /sdcard/capture.pcap

  2. 在手机端执行相应需要进行抓包分析的操作,执行完成后在命令提示符窗口执行Ctrl+C中断抓包进程
  3. 将抓包结果复制至本地(前面那个目录为手机端地址,后面那个目录为本地地址)

    C:\android-sdk-windows\platform-tools>adb pull /sdcard/capture.pcap c:/

  4. 使用Wireshark等工具查看抓包文件capture.pcap

多种方式实现在Android 手机上抓包的更多相关文章

  1. Android手机上抓包神器

    Packet Capture 一款依托安卓系统自身VPN来达到免Root抓取数据包的应用程序.Packet Capture一个使用SSL网络解密的 捕获数据包/网络嗅探 工具,虽然它的功能并不丰富,但 ...

  2. Android手机tcpdump抓包

    在开发过程中遇到问题时,无法非常方便的获取到数据包,导致分析解决问题比较麻烦.这里介绍如何在Android手机上实现tcpdump抓包.   1.root机器  在用tcpdump抓包过程中,需要使用 ...

  3. 使用Fiddler工具在夜神模拟器或手机上抓包

    下载安装Fiddler 地址:https://www.telerik.com/download/fiddler-everywhere Fiddler端设置 Tools>Options>Co ...

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

    如何在 Android 手机上实现抓包? http://www.zhihu.com/question/20467503 我想知道某个应用究竟在数据提交到哪里,提交了什么.网上的教程太复杂,不想麻烦.有 ...

  5. Android手机上监听短信的两种方式

    Android手机上监听短信有两种方式: 1. 接受系统的短信广播,操作短信内容. 优点:操作方便,适合简单的短信应用. 缺点:来信会在状态栏显示通知信息. AndroidManifest.xml: ...

  6. 如何在Android手机上进行自动化测试(下)

    版权声明:允许转载,但转载必须保留原链接:请勿用作商业或者非法用途 前言 通过阅读本篇教程,你将会了解到: 如何使用Poco对Android原生应用进行测试 Poco支持直接对任何Android原生应 ...

  7. 如何通过wifi在android手机上安装调试应用

    如何通过wifi在android手机上安装调试应用 1. 首先还是要打开手机的usb调试选项,并通过usb线连接手机.2. 然后执行“adb tcpip 5555”,把adb从usb模式切换到tcpi ...

  8. delphi xe5 android 手机上使用sqlite

    本篇我们介绍一下在android手机上怎样使用sqlite数据库,这里用Navigator实现 增删改查. 1.新建firemonkey mobile application 2.选择blank ap ...

  9. Android 手机上安装并运行 Ubuntu 12.04

    ubuntu.sh脚本的原地址变动了,导致下载不了,现在更新了网盘地址.小技巧:遇到一些下载失效的时候可以试一试p2p下载工具(如 easyMule.迅雷等)试一试,说不定有人分享过~* —————— ...

随机推荐

  1. HTML5——摒弃插件和前端框架的异步文件上传

    之前我从来没有体会到HTML5的便利,直到这次需要一个异步上传的功能功能.一开始我以为文件的一些声明必须为HTML5才管用,后来才知道添加了很多以前没有的标签,并可以直接播放视频,音频等.可以不再使用 ...

  2. MapKit 添加大头针

    #import "ViewController.h" #import <MapKit/MapKit.h> #import "MYAnnotation.h&qu ...

  3. ASP.Net MVC开发基础学习笔记(1):走向MVC模式

    一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebForm模式下,我们请求一个例如http://www.aspnetmvc.com/bl ...

  4. Codeforces Round #371 (Div. 2) - A

    题目链接:http://codeforces.com/contest/714/problem/A 题意:有两个人A,B 给定A的时间区间[L1,R1], B的时间区间[L2,R2],然后在正好K分钟的 ...

  5. DSP using Matlab 示例Example2.2

    a. n = -2:10; x = [1:7,6:-1:1]; % generate x(n) [x11,n11] = sigshift(x,n,5); [x12,n12] = sigshift(x, ...

  6. psql-05数据库,模式

    数据的组织结构 数据库:表,索引:数据行 PostgreSQL中一个服务(实例)可以有多个数据库:而一个数据库不能属于多个实例; 数据库 创建数据库 create database name [own ...

  7. 思维题(转换) HDU 4370 0 or 1

    题目传送门 题意:题目巨晦涩的传递出1点和n点的初度等于入度等于1, 其余点出度和入度相等 分析:求最小和可以转换成求最短路,这样符合条件,但是还有一种情况.1点形成一个环,n点也形成一个环,这样也是 ...

  8. ajax 异步交互

    <script>     $(function(){         $("#sub").click(function () {             $.ajax( ...

  9. R语言常用命令

    data() 列出当前已安装包中所有可用的实例数据集 help("name") 查看帮助文档  summary()  

  10. mysql 如何判断 "字符串" 是否为 "数字"

    这个问题有点怪 ,但很多时候我们会以字符串的形式存储数字 , 反过来我们用字符串进行数学运算时, 好像也不会出错 . 除非 , 用作数学运算的字符串不能转换成数字 .但是我们改如何判断字符串是否能转换 ...