我正在尝试停止 Android 2.3.7 设备上的应用程序。但在这个版本的 Android 中,我不能使用“强制停止”命令。您知道在非 root 设备上关闭应用程序的任何其他方法吗?
4 回答
第一种方式
需要root
使用kill
:
adb shell ps
=> 将列出设备上所有正在运行的进程及其进程 ID
adb shell kill <PID>
=> 而不是<PID>
使用应用程序的进程 ID
第二种方式
在 Eclipse 中打开DDMS
透视图。
在Devices
视图中,您将找到所有正在运行的进程。
选择进程并单击Stop
。
第三种方式
它只会杀死应用程序的后台进程。
adb shell am kill [options] <PACKAGE>
=> 杀死所有与(应用程序的包名)相关的进程。此命令仅终止可以安全终止且不会影响用户体验的进程。
选项是:
--用户 | 全部 | current:指定要杀死其进程的用户;所有用户(如果未指定)。
第四种方式
需要root
adb shell pm disable <PACKAGE>
=>禁用给定的包或组件(写为“包/类”)。
第五种方式
请注意,只有使用调试密钥签名的应用程序才支持 run-as。
run-as <package-name> kill <pid>
第六种方式
在 Honeycomb 中引入
adb shell am force-stop <PACKAGE>
=> 强制停止与(应用程序的包名)相关的所有内容。
PS:我知道第六种方法对你没用,但是我觉得把这个方法加入列表很重要,这样大家就知道了。
如果您有根设备,则可以使用kill
命令
使用 adb 连接到您的设备:
adb shell
建立会话后,您必须提升权限:
su
然后
ps
将列出正在运行的进程。记下要终止的进程的 PID。然后摆脱它
kill PID
要从应用程序中终止,您可以执行以下操作:
android.os.Process.killProcess(android.os.Process.myPid());
如果你想杀死粘性服务,以下命令不起作用:
adb shell am force-stop <PACKAGE>
adb shell kill <PID>
以下命令正在运行:
adb shell pm disable <PACKAGE>
如果要重新启动应用程序,必须先运行以下命令:
adb shell pm enable <PACKAGE>