开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第2天,点击查看活动详情
本文章会持续总结,可能会总结到多年以后,建议收藏
常用命令
查看最前 Activity
有时接到需求,需要改某个页面的展示,这是可以通过 adb dumpsys 的命令查看当前页面是哪个 Activity。 这种方式查找比全局搜索代码中的关键字要快速准确的多。
adb -s `adb devices |sed -n "2,1p" |awk '{print $1}'` shell dumpsys activity activities|grep -aiE "mFocused"
获得最近连接的设备的id
当有多个设备时,一般的流程可能是 先使用 adb devices 查看下连接的设备的 id,然后在新命令中加上
-s device_id 来指定设备。
adb -s `adb devices |sed -n "2,1p" |awk '{print $1}'` {输入你想使用的命令}
命令中的 adb devices |sed -n "2,1p" |awk '{print $1}' 是找最近连接到电脑上的 android 机 id。
查看APP占用内存情况
adb shell dumpsys meminfo {package_name}
这个命令输出信息非常多, 可以查看内存是否泄漏。页面关闭时 Activity 的数量是否减少,如果没有减少可能是发生内存泄漏了。这个命令一般也可以用于跑 Monkey 测试。每隔一段时间打印下内存占用情况从而进行优化。
还可以查看 App 的基本信息,比如有多少个数据库
查询耗电情况
当APP在后台大量耗电时,系统可能弹窗告知用户某个APP有耗电行为,有可能会引起用户投诉或者直接卸载。 所以需要统计耗电情况
adb shell dumpsys batterystats > battery.txt
安装
adb install {apk.path}
卸载
adb uninstall {package_name}
清理数据
当测试用户登录或者隐私协议等场景或者初始化场景,需要将APP缓存删掉。 普通方法是在手机上进入设置页面找到对应的APP,然后点击删除数据进行删除。找起来比较麻烦,不同手机的操作路径不同可能又加剧了这种麻烦。 所以这时可以使用命令进行快捷清理
adb shell pm clear {package_name}
deeplink
测试 deeplink 时也可以使用 am start命令来测试多种数据组合下的展示逻辑。
adb shell am start -a "android.intent.action.VIEW" -d 'scheme://host/path?key1=value1&key2=value2'
日志
日志过滤
adb logcat | grep -aiE "filter"
日志保存
adb logcat -d > my.log
快速输入
同事通过电脑发过来一大段话需要输入到手机中,你可以自己手动敲,或者在测试手机上也装上微信,然后转发到手机微信上,再复制黏贴到输入框中。也可以使用下面命令 1 秒钟输入完成
adb shell input text {text}
其他
还有十几种命令尚未整理,困了,以后补上。
最后
有问题请指正,谢谢