android网络抓包及Wireshark介绍

简介:

为了解phonegap及一些android应用的webview使用情况,查找了一些资料,总结如下:

主要操作流程如下:
使用TCPdump工具,抓TCP数据包。将数据包上传到PC,通过Wireshark查看数据包。

如果要从物理设备(手机)上抓包,要确保拥有该设备的root权限。本文是用android虚拟设备进行实验。

1、下载TCPdump
TCPdump下载地址http://www.strazzere.com/android/tcpdump

2、启动android虚拟机或手机,启动成功后,打开CMD,切换至adb.exe所在的目录
笔者的adb.exe所在目录为:E:\android\android-sdk\platform-tools\adb.exe

3、从PC上传TCPdump文件到手机的sd卡

1
adb push E:\android\tcpdump /data/local/tcpdump

4、设置tcpdump文件的权限

1
adb shell chmod 6755 /data/local/tcpdump 

5、启动监听程序 并将监听的数据包存放在/sdcard/capture.pcap

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

6、取消监听ctrl+c

7、下载数据包文件(.pcap文件扩展名)

1
adb pull /sdcard/capture .pcap E:\android

本文下载到E盘android目录

8、解包
得到的包文件是.pcap文件扩展名的文件。
官网下载wireshark软件:(免费开源)
http://www.wireshark.org/download.html

wireshark是一个免费开源的网络协议包分析软件,对于分析网络协议有很重要的帮助,它不同于Fiddler,不是通过代理实现的,能更加底层的抓取网卡上的数据包。
对于笔者,大多数情况只需要分析http包,所以我们打开数据包后,进行一下过滤。

相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
目录
相关文章
|
1月前
|
数据库 Android开发 开发者
构建高效Android应用:采用Kotlin协程优化网络请求处理
【2月更文挑战第30天】 在移动应用开发领域,网络请求的处理是影响用户体验的关键环节。针对Android平台,利用Kotlin协程能够极大提升异步任务处理的效率和简洁性。本文将探讨如何通过Kotlin协程优化Android应用中的网络请求处理流程,包括协程的基本概念、网络请求的异步执行以及错误处理等方面,旨在帮助开发者构建更加流畅和响应迅速的Android应用。
|
3月前
|
安全 API Android开发
Android网络和数据交互: 解释Retrofit库的作用。
Android网络和数据交互: 解释Retrofit库的作用。
39 0
|
3月前
|
Android开发 开发者
Android网络和数据交互: 请解释Android中的AsyncTask的作用。
Android网络和数据交互: 请解释Android中的AsyncTask的作用。
22 0
|
28天前
|
编解码 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)1
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)
47 1
|
28天前
|
编解码 开发工具 Android开发
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2
23 2
|
2月前
|
缓存 移动开发 JSON
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
108 0
|
6天前
|
移动开发 Java Android开发
构建高效Android应用:采用Kotlin协程优化网络请求
【4月更文挑战第24天】 在移动开发领域,尤其是对于Android平台而言,网络请求是一个不可或缺的功能。然而,随着用户对应用响应速度和稳定性要求的不断提高,传统的异步处理方式如回调地狱和RxJava已逐渐显示出局限性。本文将探讨如何利用Kotlin协程来简化异步代码,提升网络请求的效率和可读性。我们将深入分析协程的原理,并通过一个实际案例展示如何在Android应用中集成和优化网络请求。
|
7天前
|
存储 应用服务中间件 网络安全
Android 网络链接稳定性测试解决方案
Android 网络链接稳定性测试解决方案
16 0
|
14天前
|
Android开发 开发者
Android网络和数据交互: 请解释Android中的AsyncTask的作用。
Android's AsyncTask simplifies asynchronous tasks for brief background work, bridging UI and worker threads. It involves execute() for starting tasks, doInBackground() for background execution, publishProgress() for progress updates, and onPostExecute() for returning results to the main thread.
11 0
|
14天前
|
网络协议 安全 API
Android网络和数据交互: 什么是HTTP和HTTPS?在Android中如何进行网络请求?
HTTP和HTTPS是网络数据传输协议,HTTP基于TCP/IP,简单快速,HTTPS则是加密的HTTP,确保数据安全。在Android中,过去常用HttpURLConnection和HttpClient,但HttpClient自Android 6.0起被移除。现在推荐使用支持TLS、流式上传下载、超时配置等特性的HttpsURLConnection进行网络请求。
10 0