杀死Android中的应用程序

时间:2011-09-22 21:19:32

标签: java android

我有一个应用程序,它在状态栏中显示一条通知,供用户点击以恢复活动。

在应用程序中,我还将有一个关闭的应用程序按钮:

android.os.Process.killProcess(android.os.Process.myPid());

当我点击关闭应用程序按钮时,只要我没有通过点击通知进入应用程序,该应用程序就会被杀死。

如果我通过单击应用程序进入应用程序,应用程序将“闪烁”一秒钟,并显示新副本。我想会显示一个新副本。

有人碰巧知道造成这种情况的原因吗?

4 个答案:

答案 0 :(得分:4)

你不会在Android中杀死应用程序,这不是事情的运作方式。用户导航离开,系统会在需要时清除剩余的内容。当手机已经有一个Home和Back按钮时,为什么你需要一个“关闭”按钮?

答案 1 :(得分:1)

杀死你的应用程序是一件非常糟糕的事情。根据您的应用程序正在执行的操作,您可能会因为突然杀死的内容而留下一些未正确清理的资源。在android上没有理由这样做。在没有您的帮助的情况下,Android可以更好地管理资源/电池寿命。

如果你真的想要添加一个关闭按钮,最好的办法是让用户回到他们的主屏幕。

答案 2 :(得分:0)

你说

  

@Philipp Reichart我试过替换   android.os.Process.killProcess(android.os.Process.myPid());同   完成()但它没有用。申请没有被杀死

我的某个应用程序出现了类似的情况,并且finish()没有工作,所以我简单地使用了.killProcess,直到我能解决了这些错误。但这不应该是一个永久的解决方案。

我的问题是线程。完成后确保所有线程都已正确处理(关闭IO流,数据库引用,游标等等)。一旦我这样做,没有理由将.killProcess作为finish()完成这项工作。

此外,Android系统内置了“后退”按钮退出,“主页”按钮“最小化”(将应用程序保留在内存中)。应用程序不需要“退出”按钮,因为它已经存在,这为您提供了更多的屏幕空间:)。

答案 3 :(得分:-2)

你试过system.exit(0);当用户选择“关闭”按钮时调用finish()后,在onDestroy()中,..

即使不推荐