adb命令的主要用途
1. 运行android设备的shell(命令行)。
2.管理模拟器或android设备的映射端口。
3. 安装和卸载应用程序。
4.计算机和android设备之间的上传和下载文件。
adb常用命令:
adb devices // 查看当前连接的设备
adb install helloworld.apk // 安装当前目录下的apk
adb uninstall helloworld.apk // 卸载apk
adb push <本地文件> <远程路径> // 推送本地文件到Android系统中
adb pull <远程路径> <本地路径> // 拉取Android系统中的文件到本地
Android常用的调试命令:
getprop // 得到系统所有的属性值
setprop <key> <value> //设置属性值
watchprops //观察属性的改变
ps
df
du -sh ./* 查看当前每个文件的大小
du -sh ./* | sort 查看当前每个文件的大小并排序显示
procrank
系统中各进程的内存使用快照,这里有PSS,USS,VSS,RSS。我们一般观察Uss来反映一个Process的内存使用情况,
Uss 的大小代表了只属于本进程正在使用的内存大小,这些内存在此Process被杀掉之后,会被完整的回收掉。
VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
dumpsys命令: // 显示系统数据信息
dumpsys wifi
dumpsys cpuinfo ----------查看CPU信息
dumpsys meminfo com.android.launcher2---------查看com.android.launcher2在内存中的信息
dumpsys activity ---------查看ActvityManagerService 所有信息
dumpsys activity activities----------查看Activity组件信息
dumpsys activity services-----------查看Service组件信息
dumpsys activity providers----------产看ContentProvider组件信息
dumpsys activity broadcasts--------查看BraodcastReceiver信息
dumpsys activity intents--------------查看Intent信息
dumpsys activity processes---------查看进程信息
dumpsys window
service list
netcfg命令: // 网络信息调
netcfg
netcfg eth0 up dhcp
netcfg eth0 192.168.3.123 netmask 255.255.255.0 up
netcfg eth0 down
route add default gw 192.168.3.1 dev eth0 // 设置网关
ifconfig命令: //linux网络调试命令 android也支持
ifconfig eth0 128.224.156.81 up
ifconfig eth0 down
ifconfig eth0 128.224.156.81 netmask 255.255.255.0 up
echo "0 0 0 0" > /proc/sys/kernel/printk // 关闭kernel的打印信息,很常用
cat /proc/kmsg
monkey -p com.android.settings -v 9999 // 开启自动化测试
monkey -p com.android.settings 1 // 打开com.android.settings,默认是打开main activity
ps -t 进程号 // 查看进程有多少个线程
mount -o remount,rw /system // 挂载文件系统的system目录为可读写
input text 1234567890
input keyevent xxx
getevent
sendevent
reboot recovery // 重启进入reccovery模式
am
am start -n com.android.music/com.android.music.MusicBrowserActivity // 启动activity
am broadcast -a com.Android.test --es test_string "this is test string" --ei test_int 100 --ez test_boolean true
// 说明:蓝色为key,红色为alue,分别为String类型,int类型,boolean类型
am start -a android.intent.action.CALL -d tel:10086 // 拨打电话
pm
pm list package // 此时则显示所有已经安装的包名
pm list package -f // 也显示associated(apk存档文件)文件所在目录
pm list permission-groups // 察看已知的权限组
pm list permissions // 察看所有已知的权限
pm list features // 列出所有硬件相关信息
pm path com.TDiJoy.fane // 列出apk的安装包路径
pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-s] [-f] PATH
例:pm install /data/3dijoy_fane.apk
-r: 安装一个已经安装的APK,保持其数据不变。
-i:指定安装的包名。(没试出来)
-s: 安装到SDCard上。
-f: 安装到内部Flash上。
pm uninstall 包名
pm getInstallLocation // 得到系统默认的apk安装位置
pm setInstallLocation <0|1|2> // 设置系统默认的apk安装位置
0: 自动。
1:内部Flash。
2:扩展存储设备。