0x00 概要命令
-
adb shell pm list packages
,列举所有的安装包。 -
adb connect ip:port
,网络adb连接。 -
adb install package
,安装应用。 -
adb uninstall package
,卸载应用。 -
adb tcp:port tcp:port
,端口转发。adb forward tcp:23946 tcp:23946
,连接IDA试。 -
adb reboot bootloader
, 进入fastboot -
mount -o rw,remount /system
, 将system文件夹变为可读写的文件系统 -
adb shell getprop | grep product
, 查看设备信息(CPU信息等) -
adb shell dumpsys activity | grep com.xxx.xxx.xx
, 打印Activity栈顶信息
fastboot下命令:
fastboot devices -l 列举设备
fastboot flashing lock 15年以后
fastboot oem lock 15年以前
fastboot flash recovery twrp-3.0.2-0-hammerhead.img 刷入recovery
fastboot reboot 重启手机
fastboot oem get-bootinfo
0x01 详细命令
adb logcat -v time -f /sdcard/test.txt -s "TAG:*"
说明:1, -v time表示日志的输出日志,默认导出来是没时间的
2, -f 后面的参数表示要输出的日志文件,这里的路径必须要是手机上的路径
3, -s 后面的参数要过滤日志的TAG,相当于Log.d("TAG","......");
4,在cmd窗口下执行完这条命令后,这条命令会一直阻塞在那里,不能关闭掉cmd窗口,一关掉就停止输出日志到文件了。
0x02 adb内部命令
卸载:adb uninstall [-k] [package]
k表示保留配置文件
安装:adb install -r [package]
上传:adb push text.txt /sdcard/txt.txt
下载:adb pull /data/app/com.qylk.express-2.apk
显示执行中的进程及CPU使用情况top
显示内存使用情况free
更改一个或多个文件或目录的属主和属组chown
启动Activity: am start -n
包名/类名 如am start -n cn.qylk/.Logo
相机: am start -n com.android.camera/com.android.camera.Camera
浏览器:am start -n com.android.browser/com.android.browser.BrowserActivity
定位: am start -a android.intent.action.VIEW geo:0,0?q=beijing
启动网页: am start -a android.intent.action.VIEW -d http://www.aizheke.com
打电话: am start -a android.intent.action.CALL -d tel:88888888
启动: Serviceam startservice -n cn.qylk/.service.LocalService
查看LOG信息: logcat -s [标签名]
【记录到文件:-f [filename]】
查看设备: adb devices
进入shell: adb -s emulator-5554 shell
设备序列号: adb get-serialno
快捷方式: ln -s <target> <name>
重启: reboot [-n] [-p] [rebootcommand]
-n: 在重开机前不做将记忆体资料写回硬盘的动作。
adb reboot
重新启动
adb reboot recovery
重新启动到recovery
adb reboot bootloader
重新启动到bootloader
挂载: systemadb remount
加载文件系统: mount -a [-r] [-t type] [-o options] [-rw] device dir
。
-t type:显示被加载文件系统的类型。
-n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系统的情况下,可以用这个选项取消这个动作。
如:mount -o remount,rw /dev/block/mtdblock3 /system
常用文件命令:rm、cp、mkdir、mv、chmod、grep(文本搜索)、find
杀进程:kill
比较文件: diff(显示详细不同点)、cmp(显示结论)
检查文件系统的磁盘占用: df
显示文件内容: cat [name]
0x03 adb获取设备信息
adb shell 获取手机设备信息:
1、设备基本信息:cat /system/build.prop | grep "product"
2、CPU信息:/proc/cpuinfo和/proc/stat
3、内存:/proc/meminfo adb shell dumpsys meminfo
Terms
VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
0x03 adb 取出安装在手机中的 apk
第一步,找到程序的包名
借助 adb shell pm 命令,将安装的所有应用包名列出来:
$ adb shell pm list packages
package:android
package:cn.wps.moffice
package:com.android.backupconfirm
package:com.android.bluetooth
package:com.android.browser
package:com.android.calculator2
package:com.android.camera
package:com.android.certinstaller
package:com.android.contacts
第二步,找到 apk 的位置
$ adb shell pm path com.tence01.mm
package:/data/app/com.tence01.mm-1.apk
第三步,pull 出来
$ adb pull /data/app/com.tence01.mm-1.apk ~/apks
2407 KB/s (25567735 bytes in 10.370s)
网友评论