使⽤adb命令停⽌APP后台进程的⽅法
0. 环境描述
①宿主机系统:Ubuntu 14.04 Desktop
②客户机系统:Android-x86 4.4 R2
③ SDK版本:android-sdk_r24.2-linux
④虚拟化⽅案:KVM QEMU
⑤联⽹⽅式:NAT
⑥宿主机IP:192.168.1.109
⑦客户机IP:192.168.122.131
⑧⽰例APP:搜狐视频
1. 启动客户机
①通过VNC连接⾄宿主机;
②在宿主机中到并运⾏:Applications → System Tools → Virtual Machine Manager;
③在KVM的图形界⾯中运⾏先前创建好的Android-x86虚拟机。
2. ADB连接⾄客户机
在宿主机的shell中运⾏以下命令:
1. adb connect 19
2.168.122.131:5555
若上述命令的输出如下所⽰,则表⽰连接成功:
3. 检查搜狐视频是否在运⾏
在宿主机的shell中运⾏以下命令:
1. adb shell ps | grep sohu
若上述命令的输出如下所⽰,则表明当前没有运⾏搜狐视频:
4. 运⾏搜狐视频APP
①查运⾏⼊⼝
使⽤APKTool⼯具反编译搜狐视频的APK安装⽂件(SohuVideo_Android_Phone.apk),得到如下⽂件列表:
其中的l⽂件包含APP的启动信息,⼏乎每个APP的APK⽂件反编译之后都具有这个⽂件。
使⽤Notepad++打开l⽂件,查关键字“android.intent.category.LAUNCHER”或“android.intent.action.MAIN”,此时可以到APP的⼊⼝动作:
其中的“.FirstNavigationActivityGroup”便是便是搜狐视频的⼊⼝动作,下⾯通过adb启动APP时需要⽤到。
②在宿主机的shell中运⾏以下命令:
下载app里的视频1. adb shell am start -a android.intent.action.MAIN -n com.sohu.sohuvideo/.FirstNavigationActivityGroup
若上述命令的输出如下所⽰,则表明运⾏搜狐视频成功:
此时观察客户机,可以发现搜狐视频已经成功运⾏:
5. 关闭搜狐视频APP
①到搜狐视频的系统进程
在宿主机的shell中运⾏以下命令:
1. adb shell ps | grep sohu
若上述命令的输出如下所⽰,则表⽰到搜狐视频的进程:
搜狐视频的进程名为“com.sohu.sohuvideo”。
②此处有两种⽅法关闭搜狐视频的进程,如下所⽰:
Method-A:
在宿主机的shell中运⾏以下命令:
1. adb shell am force-stop com.sohu.sohuvideo
若上述命令的输出如下所⽰,则表⽰成功杀死进程:
注意:
这种⽅法会强制停⽌APP进程,不会清除APP进程在系统中产⽣的数据。
Method-B:
在宿主机的shell中运⾏以下命令:
1. adb shell pm clear com.sohu.sohuvideo
若上述命令的输出如下所⽰,则表⽰成功杀死进程:
注意:
这种⽅法不仅会停⽌APP进程,⽽且会清除这个APP进程产⽣的所有数据。
③检查搜狐视频是否正在运⾏
在宿主机的shell中运⾏以下命令:
1. adb shell ps | grep sohu
若上述命令的输⼊如下所⽰,则表⽰已经成功停⽌搜狐视频的后台进程:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。