在安卓系统中以编程方式强制停止应用程序

4

我想在我的Android应用中强制停止一个应用程序,(而不是手动执行,如应用程序-强制停止)。该如何实现?

我使用了:

android.os.Process.killProcess(android.os.Process.myPid());
system.exit(0);

它崩溃了。


你找对人了。结果是什么?点击这里查看。 - Praveenkumar
1
我认为你不应该同时做这两件事。只选一件吧。 - nandeesh
它也可以从应用程序退出,有没有办法在程序中强制停止应用程序...请告诉我。 - R KiranKumar
可能是如何在程序中强制停止我的Android应用?的重复问题。 - Shirish Herwade
3个回答

3

android.os.Process.killProcess(android.os.Process.myPid()); 这段代码是正确且最佳的。如果需要更多信息,请参考以下链接:如何关闭Android应用程序?Process

你也可以尝试这段代码:

Intent intent = new Intent(yourCurrentActivity.this, yourNextActivity.class);  
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);  
android.os.Process.killProcess(android.os.Process.myPid());

你开启一个活动,然后关闭当前活动。

你在哪里使用这段代码 android.os.Process.killProcess(android.os.Process.myPid());?你想关闭你的应用程序还是第三方应用程序? - Sekar
在上一个活动中,我已经将这个放在onclick()里面了。 - R KiranKumar
这段代码用于启动主页活动,我想强制停止我的应用程序。 - R KiranKumar
这段代码对我有效,请检查一下。您可以启动另一个活动并关闭当前活动。 - Sekar
我不想启动一个新的活动。我所需要的就是像手动关闭应用程序一样关闭应用程序(转到应用程序->强制停止)。我希望它可以通过编程实现。 - R KiranKumar

2
将以下代码放入关闭按钮中,您的应用程序将停止。
private void endapp() {
    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
    android.os.Process.killProcess(android.os.Process.myPid());
}

您可以尝试使用这个。
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(10);

杀死进程ID并不能将应用程序从最近列表中移除。 - Erum

-1

试试这个...

private void QuitApp() {

    //getActivity().moveTaskToBack(true); //Move the task containing this activity to the back of the activity stack. 

    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_HOME);
    startActivity(intent);
    int pid = android.os.Process.myPid();
    android.os.Process.killProcess(pid);
    System.exit(0);
  }

这是根本错误的 - 应用程序开发人员的工作不是终止进程,而是在工作结束时简单地调用finish()。系统将决定适当的进程生命周期。 - Chris Stratton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接