前提获得usb权限
1.adb启动app命令
adb shell am start -n package/launch activity
# 例如
adb shell am start -n com.android.settings/com.android.settings.Settings
终端出现这个语句表示成功了
Starting: Intent { cmp=com.android.settings/.Settings }
2.查找当前的activity
- 查询当前手机actvity所有启动信息
adb shell dumpsys activity
- 查找当前显示在桌面上的activity(即:打开你想要用adb打开的应用界面)
adb shell dumpsys activity top| grep ACTIVITY
如果没有wsl(不是 liunx 就用不了 grep),就直接进入手机 adb shell 模式运行
dumpsys activity top| grep ACTIVITY
- 查找当前手机所有包名
adb shell pm list package
因为存在有些 app 启动页在方法2中找的 activity 不生效,主要原因存在着跳转页面
- 查询app启动流程
adb shell dumpsys activity| grep android.intent.category.LAUNCHER
找到包名一致,但class不一样,用adb启动app命令测试一下,就知道了
获取APP包
既然都找到了APP的包名了,那就获取对应app的包的位置。
adb shell pm list packages -f com.xxx
com.xxx 表示的是包名一定是包名。
这样我们会获得下面的信息
package:/system_ext/priv-app/Settings/Settings.apk=com.android.settings
然后执行pull语句就ok了
adb pull /system_ext/priv-app/Settings/Settings.apk .