最近想在android手机上试下网络抓包 然后晚上都说用tcpdump。
不幸的是研究了两天我那手机死活还是不行,先告一段落把,但是中间还是有很多值得记录下。
======================== adb 简介=================================
先说adb把 具体就不解释了可以自己google下,简单说就是连接android 的一个shell。
对于不同的android希望用相应sdk里的adb。每个版本的sdk在http://developer.android.com/sdk/index.html 找找。
下载好后 在\sdk\platform-tools 里有adb.exe 直接在cmd下 执行 adb shell就可以进入了。
连接进去后 su 就可以获取root权限
1|shell@android:/ $ su shell@android:/ #
$变#号就说明成功 当然要获取root权限自己要先手机root了.
===========================busybox =====================================
进去之后你会发现很多我们linux shell里常用的命令在adb里都没有。
比如 cp vi 都不存在。
我们可以安装下 busybox
下载地址http://www.busybox.net/downloads/binaries/
当然根据手机咯 一般arm的cpu就选 armv6l 就行
adb push busybox /mnt/sdcard
adb shell
su
mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /
system
cp /mnt/sdcard/busybox /
system
/xbin
如果没有cp命令就 用 cat /mnt/sdcard/busybox > /
system
/xbin
chmod
755 busybox
在 /system/xbin 下输入
busybox --install /system/xbin
具体看这篇
为Android安装BusyBox —— 完整的bash shell
================================putty 连接 adb shell==========================
在我们有了正行的shell之后你会发现在windows上 用cmd 的client 在操作简直是噩梦 首先字符编码不对 你会发现当你vi一个文件 时无法操作,其次没有tab什么自动补全,复制黏贴什么就不说了。
后来找到了一篇文件介绍怎么用putty来连接 adb 的。
文章地址:http://forum.xda-developers.com/showthread.php?t=803225
下载 adbputty http://github.com/sztupy/adbputty/downloads
-连接方式选择 adb
-host上填"transport-usb" 引号不要(或者是别的连接字符串 具体查看 adb sockey interface 的文档)
-端口填 5037
-连接
当然之前你先保证你在cmd 里 adb shell能连接的上。
=================================BlueStacks =========================
经过一番努力后,我启动 tcpdump 始终返回给我
shell@android:/system # ./tcpdump
tcpdump: no suitable device found
我网上了很久都说是 没有root权限 但是我发现我su后居然能删除 root的文件 无奈还是放弃了在手机上装tcpdump的想法。
后来我换了个思路 想在windows上执行 apk文件 然后监控 pc的网卡 也是可以起到抓包的效果的,后来我就找到了BlueStacks 。简单讲就是一个android虚拟机,下载好安装后直接可以运行了,不用去装个什么eclipse 和 sdk了。而且也可以直接双击 运行 apk文件来安装到 虚拟机里运行,挺方便的。
一切搞定后就开始抓包了,体力活,用了网上说的Wireshark 不过个人觉得用气来一般。回头再找找别的。
虽然这几天最后没有实现在android上装tcpdump在抓包的任务,但最后也算曲线救国了下,后面就是慢慢研究抓到的数据了。
相关推荐
"Android开发笔记之adb参数指南" Android Debug Bridge(ADB)是一款强大的调试工具,由Android提供,旨在帮助开发者调试和优化Android应用程序。ADB提供了多种命令,能够帮助开发者完成各种任务,例如安装应用程序...
6. android_id:adb shell settings get android_id 7. IMEI:adb shell dumpsys iphonesubinfo 8. Android 系统版本:adb shell getprop ro.build.version.release 9. IP 地址:adb shell ip addr show 10. Mac ...
在Android开发过程中,Android Debug Bridge (ADB)是一个至关重要的工具,它允许开发者与模拟器或连接的Android设备进行通信。ADB作为一个客户端-服务器程序,由三个主要组件组成: 1. **客户端**:客户端运行在...
6. **adb shell**:Android Debug Bridge (ADB) 是一个开发者工具,用于与运行Android系统的设备进行通信。在调试过程中,通过adb可以进入设备的shell环境,执行各种命令,如安装应用、查看设备状态、操作文件系统等...
这份"新版Android开发教程&笔记4--Dalvik ADB"显然会深入探讨这两个主题,帮助开发者更好地理解和掌握Android系统的运行机制以及调试工具的使用。下面将详细阐述这两个知识点。 **Dalvik虚拟机** Dalvik是Android...
- `adb shell`:进入设备的Shell环境。 - `adb install <apk_path>`:安装APK文件。 - `adb uninstall <package_name>`:卸载指定包名的应用程序。 - `adb push <local_file> <remote_path>`:将本地文件推送到...
### Android学习笔记 #### 1. Android概述 **1.1 Android的特性** - **应用框架**:Android提供了一个强大的应用框架,使得开发者能够轻松地重用基础组件和服务,简化了应用程序的开发流程。 - **Dalvik虚拟机**...
在“新版Android开发教程&笔记四--Dalvik ADB.pdf”这份文档中,你将深入了解到如何设置和使用ADB,包括安装ADB环境、连接设备、调试应用等基本步骤。此外,文档可能还会涵盖如何利用ADB进行设备控制、数据备份和...
### Android Debug Bridge (ADB) 的使用方法 #### 一、简介 Android Debug Bridge(简称ADB)是Android SDK中的一个命令行工具,它提供了与Android设备交互的多种方式。ADB可以帮助开发者进行设备管理、数据传输以及...
ADB是Android系统中的一个命令行工具,用于在计算机和设备之间传输数据、执行远程shell命令以及进行设备调试。理解ADB的使用方法,如安装、连接设备、查看设备状态、推送文件和执行命令,是Android开发者的基本技能...
### Android学习笔记(入门必看) #### 一、Android简介 **Android** 是一个开源的操作系统,主要用于智能手机和平板电脑等移动设备。它由Google公司维护,并基于Linux内核进行开发。Android平台不仅包括操作系统...
### Android学习笔记:卸载模拟器中的APK文件 #### 一、背景介绍 随着移动互联网的迅猛发展,Android作为全球最受欢迎的移动操作系统之一,在软件开发领域占据着举足轻重的地位。对于初学者而言,熟悉Android开发...
新手学习android时,对命令行的常用命令特意作了笔记,贡献给大家。 主要包括: 查看avd列表 启动模拟器 安装/卸载程序 启动/关闭ADB服务 查询当前模拟器/设备的实例 列出目标设备id 创建模拟器 进入adb shell 查看...
可以通过命令`adb shell dumpsys activity`来查看当前设备上运行的Activity列表及其相关信息,这对于调试和分析应用行为非常有帮助。 #### 二、Android应用签名与插件化开发 **知识点5:应用签名** 1. **签名工具...
### Android学习笔记要点 #### 一、Android平台概述 **1.1 Android的特性** - **应用框架**:提供了一套完整的应用框架,允许开发者轻松地重用基础设施。 - **Dalvik虚拟机**:专为移动设备优化的虚拟机,提高了...
### Android艺术开发探索读书笔记(1-3章) #### 概述 《Android艺术开发探索》一书深入探讨了Android应用开发的核心技术和实践方法。本书第1至3章重点介绍了Activity生命周期、启动模式以及Android IPC机制等内容...
2. **卸载APK**:通过`adb shell`进入模拟器环境,然后使用`ls -l`列出`data/app`目录下的所有APK文件,最后使用`rm`命令删除指定的APK文件。 #### 四、对话框的简单应用 在Android应用中,`AlertDialog`是一种...
adb shell monkey [options] <事件数目> ``` 其中`[options]`表示上述提到的命令行参数,`<事件数目>`表示Monkey需要执行的事件数量。 通过上述步骤,我们可以充分利用Monkey工具进行高效的自动化测试,提高...