
AndroID应用安装涉及到如下几个目录:
system/app系统自带的应用程序,无法删除。
data/app用户程序安装的目录,有删除权限。安装时把apk文件复制到此目录。
data/data存放应用程序的数据。
data/dalvik-cache将apk中的dex文件安装到dalvik-cache目录下(dex文件是dalvik虚拟机的可执行文件,其大小约为原始apk文件大小的四分之一)。
安装系统应用
adb root
adb remount
解释: 将 '/system' 部分置于可写入的模式,默认情况下 '/system' 部分是只读模式的。这个命令只适用于已被 root 的设备
adb shell >
mount -o remount,rw
exit
adb push ...app-release-system.apk /system/app/
adb reboot
卸载系统应用
adb root
adb remount
adb shell >
cd /system/app
rm -rf app-release-system.apk
reboot
如果有两台设置调用其中一台设备的adb指令:
adb -s 设备号/IP地址 控制指令
一、手机连接电脑,检测手机是否已开启授权并连接成功
adb devices
二、安装应用
adb install UYUN-CARRIER-AndroID.apk
三、卸载应用
1.查看应用包名
adb shell pm List packages
2.执行卸载命令
adb uninstall com.broada.carrIEr.mobile
adb 打开系统界面和后退,部分adb命令
打开系统设置界面
adb shell am start -n com.androID.settings/.Settings
返回上一个界面
adb shell input keyevent BACK
回到Lanucher首页
adb shell am start -n com.androID.launcher3/com.androID.launcher3.Launcher
monkey 测试
adb shell monkey -p xxx -v 5000 >C:\Users\xxx\Desktop\monkey.txt
查看串口:
adb shell
su
ls -l /sys/class/tty/ttyUSB*
adb截屏
adb shell screencap -p /sdcard/xx.png
adb pull /sdcard/xx.png
adb 无线连接
首先设备要跟电脑处于同一个局域网,查看设备的ip
adb connect 192.168.1.100:5555(adb connect ip:5555)
一,adb push (PC到AndroID设备)
1,通过adb 连接(WiFi连接或者数据线连接)AndroID设备
2,PC端进入命令窗口(win +R 组合键后,输入cmd)
3,adb push C:\Users\administrator\Desktop\test.jpg sdcard
注:C:\Users\administrator\Desktop\test.jpg是PC端文件存放路径;sdcard 是AndroID设备存放路径
二,adb pull(AndroID设备到PC)
// app在手机中的存放路径: /system/priv-app/DeviceTest/DeviceTest.apk
// app导出到的目标路径 C:\Users\administrator\Desktop\
adb pull /system/priv-app/DeviceTest/DeviceTest.apk C:\Users\administrator\Desktop\
注意权限,复制系统权限的目录下的文件,需要 root ,并且一般的 AndroID 机 root 之后并不能使用命令去复制,而需要在手机上使用类似于 RE 的文件浏览器,先对系统的文件系统进行挂载为可读写后,才能在手机上复制移动系统文件
附:
其他常用adb指令:
1.adb install +包名 adb安装apk (覆盖安装是使用 -r 选项)
2.adb uninstall +包名 adb卸载apk
3.adb connect +设备IP 网络连接AndroID设备
4.adb reboot 重启AndroID设备
5.adb devices 获取连接的设备列表及设备状态
6.adb get-state 获取设备的状态 (设备的状态有 3 钟,device:设备正常连接 , offline:连接出现异常,设备无响应 , unkNown:没有连接设备)
7.查看运行在 AndroID设备上的 adb 后台进程:
执行 adb shell ps | grep adbd ,可以找到该后台进程,windows 请使用 findstr 替代 grep
8.adb shell 命令
adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 AndroID 系统中的命令,这些 AndroID 特有的命令都放在了 AndroID 设备的 system/bin 目录下
8.1. adb shell BUGreport , 打印dumpsys、dumpstate、logcat的输出,也是用于分析错误
输出比较多,建议重定向到一个文件中
adb shell dumpsys > d:\BUGreport.log
8.2 pm
Package Manager , 可以用获取到一些安装在 AndroID 设备上得应用信息
8.2.1 adb shell pm List package 列出所有的应用的包名 (-s:列出系统应用 -3:列出第三方应用 -f:列出应用包名及对应的apk名及存放位置 -i:列出应用包名及其安装来源)
8.2.2 adb shell pm path+包名 列出对应包名.apk 位置
8.2.3 adb shell pm install +apk存放路径 安装应用(目标 apk 存放于PC端,用 adb install 安装 目标 apk 存放于AndroID设备上,用 pm install 安装)
8.3 am
8.3.1 adb shell am start +包名/.Activity (要启动的Activity) 启动一个 Activity (-s先停止目标应用,再启动 -w 等待应用完成启动 -a 启动默认浏览器打开一个网页例:adb shell am start -a androID.intent.action.VIEW -d http://testerhome.com)
8.3.2 adb shell am monitor 监控 crash 与 ANR
8.3.3 adb shell am force-stop 后跟包名,结束应用
8.3.4 adb shell am startservice 启动一个服务
8.3.5 adb shell am broadcast 发送一个广播
8.4 input
这个命令可以向 AndroID 设备发送按键事件
8.4.1 adb shell input text +具体内容 发送文本内容,不能发送中文
8.4.2 adb shell input keyevent + 按键事件 发送按键事件 例如:adb shell input keyevent KEYCODE_HOME 模拟按下Home键
8.4.3 adb shell input tap +触摸事件的位置 , 对屏幕发送一个触摸事件 例如:点击屏幕上坐标为 500 500 的位置(adb shell input tap 500 500)
8.4.4 adb shell input tap , 对屏幕发送一个触摸事件
8.4.4 adb shell input swipe 滑动事件 例如:从右往左滑动屏幕
adb shell input swipe 800 600 100 600
8.5 screencap
截图命令
adb shell screencap -p /sdcard/DCIM/screenTest.png
8.6 screenrecord
4.4以上系统版本新增的录制命令
adb shell screenrecord /sdcard/demo.mp4
执行命令后 *** 作手机,ctrl + c 结束录制,录制结果保存至 sdcard/ 下
8.7 ime
列出设备上的输入法
adb shell ime List -s
其他
1.获取系统版本
adb shell getprop ro.build.version.release
2.获取系统API版本
adb shell getprop ro.build.version.sdk
3.获取手机相关制造商信息
adb shell getprop | grep "model\|version.sdk\|manufacture
r\|harDWare\|platform\|revision\|serialno\|product.name\|brand"
3,获取手机系统信息( cpu,厂商名称等)
adb shell "cat /system/build.prop | grep "product""
或者
adb shell
cat /system/build.prop | grep "product"
4,获取手机设备型号
adb -d shell getprop ro.product.model
5,获取手机厂商名称
adb -d shell getprop ro.product.brand
或者分开执行
adb shell
getprop ro.product.brand
6,获取手机的序列号
有两种方式
1,adb get-serialno
2,adb shell getprop ro.serialno
7,获取手机MAC地址
adb shell cat /sys/class/net/wlan0/address
8,获取手机内存信息
adb shell cat /proc/meminfo
9,获取手机存储信息
adb shell df
10,获取手机内部存储信息
adb shell df /data
11,获取AndroID设备屏幕分辨率
adb shell "dumpsys window | grep mUnrestrictedScreen"
12,连接多个设备对其中一个进行 *** 作
//以adb shell 为例
adb -s 192.168.101.37:5555 shell
13,查看运行进程
adb shell procrank
14,关闭或杀掉进程
adb shell kill 366
15,保留数据和缓存文件,重新安装,升级
adb install -r test.apk
16,卸载app但保留数据和缓存文件
adb uninstall -k cnblogs.apk
17,查看目录下的文件大小
adb shell du -sh *
18,查看正在运行的Services
adb shell dumpsys activity services [<packagename>]
19,查看正在运行的Activity
adb shell dumpsys activity [<packagename>]
20,clear 清除应用数据
adb shell pm clear com.baIDu
21,cp复制文件
adb shell 进入AndroID linux命令中
cp -f system/app/Music/Music.apk /sdcard/Music.apk
22,删除命令
adb shell 进入AndroID linux命令中
rm -r /mnt/sdcard/a.mp3
删除文件夹的时候需要加上-r参数
cd dir
rm * 删除dir中所有文件
23,重启进入recovery模式
adb reboot recovery
24,cat查看文件
cat /sdcard/test.txt
25,查看指定进程PID
ps + 进程的包名
26,查看进程具体的信息
例如:1460是要查看的进程的PID
cat /proc/1460/maps 查看进程的文件结构
cat /proc/1460/status 查看进程的状态
27,findstr 和 grep过滤搜索
1)cmd下搜索包名为com.androID.launcher3的进程
adb shell ps|findstr /i “com.androID.launcher3”
2)shell下面搜索
先使用adb shell进去,然后使用grep命令过滤
ps | grep “com.linux.test”
查看手机cpu架构:
adb shell getprop ro.product.cpu.abi
总结以上是内存溢出为你收集整理的Android的adb指令使用全部内容,希望文章能够帮你解决Android的adb指令使用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)