【问题标题】:Close android application programmatically [duplicate]以编程方式关闭android应用程序[重复]
【发布时间】:2012-07-08 20:22:44
【问题描述】:

如何以编程方式关闭我的应用程序?

我用过

   finish();

或者

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

或者

System.exit(0);

或者

moveTaskToBack(true);

但它关闭了当前正在运行的活动,但我需要关闭整个应用程序??

我需要关闭应用程序以检索一些内存,然后重新启动应用程序。

或者

有没有办法清除应用程序的所有内存?

【问题讨论】:

标签: android


【解决方案1】:

在您的活动中使用这些行:-

this.finish();
Process.killProcess( Process.myPid() ); 

将杀死您的整个应用程序(假设它在单个进程中运行)它还将释放任何相关的内存。

警告:在某些手机上,如果您正在使用蓝牙插座,这样做可能会使它们悬空。

【讨论】:

  • 这对我没有帮助。实际上情况就像 - 我必须进行活动 A 和 B,当用户在活动 B 上并按下时,它将通过使用意图重定向到活动 A。我想当用户现在在活动 A 上并按下返回键时,整个应用程序应该关闭,因为活动 A 是主活动。但是正在发生的事情是 - 当用户在活动 A 上并按下后,活动 B 会出现在前面。如果用户处于主要活动并按下后退按钮,请提供任何建议我如何通过应用程序关闭。
  • @neel 你不应该从 B 启动另一个 A 实例。在 A 中使用 startActivityForResult() 并使用 this.setResult()this.finish() 退出 B。 Activity A 现在从 B 接收到一个参数,而无需启动另一个实例。
  • @David: 'System.exit(0);' 怎么样,如果我们使用它们,这是否也会让蓝牙插座悬空? .如果是,还有哪些其他方法可以优雅地关闭应用程序?
  • 顺便说一句,这完全是不好的做法!不要杀死进程!
猜你喜欢
  • 2017-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-29
  • 1970-01-01
  • 1970-01-01
  • 2014-11-28
  • 2016-04-25
相关资源
最近更新 更多