通过亚行外壳接受"强制关闭"对话框

  • 本文关键字:对话框 外壳 android adb
  • 更新时间 :
  • 英文 :


我正试图弄清楚当安卓应用程序因硬错误(特别是out_of_memory)崩溃时,如何(或者是否可能)通过adb shell接受"强制关闭"对话框。我希望基本上用bash脚本循环一个应用程序,所以当它崩溃时,我想让它重新运行。这里缺少的一步是,我无法模拟按下对话框中间显示的"强制关闭"按钮。

同时,这个进程似乎并没有真正运行(试图杀死PID不起作用),所以这是一个有点奇怪的情况,因为它似乎已经停止了,但再次启动它(通过adb shell am…)只会让我"当前任务已经被提到了最前面"。

任何想法都将不胜感激!

UnaughtException处理程序的

+1到DarkXphenomon。

但是,要终止进程,您应该使用am:

am force-stop: force stop everything associated with <PACKAGE>.
am kill: Kill all processes associated with <PACKAGE>.  Only kills.
  processes that are safe to kill -- that is, will not impact the user
  experience.

例如:

adb shell am force-stop <YOUR.PACKAGE.NAME>

如果是您自己的应用程序,您可以添加UnaughtException Handler,而不显示强制关闭对话框。如果没有,以下可能会起作用。

你也可以从adb中终止进程。(信用)

adb shell kill $(adb shell ps | grep YOUR.PACKAGE.NAME | awk '{ print $2 }')

之后,您可以使用adb shell am ...重新启动该过程。

最新更新