我对 Android 应用程序有疑问。
“如何从任务管理器终止 Android 应用程序?”。我已经尝试过System.exit(0)
, android.os.Process.killProcess(android.os.Process.myPid());
和finish()
但他们只会停止应用程序,不会从任务管理器中杀死应用程序。请告诉我该怎么做。
更新:
我用过finishAffinity()
从任务管理器中清除应用程序并 System.exit(0)
停止 Activity ,看起来对我的问题来说很好。
最佳答案
我的解决方案基于上面访客的评论以及下面 gilsaints88 的评论(针对 Android L 兼容性):
将此 Activity 添加到您的 AndroidManifest.xml 文件中:
<activity
android:name="com.example.ExitActivity"
android:theme="@android:style/Theme.NoDisplay"
android:autoRemoveFromRecents="true"/>
然后创建一个类ExitActivity.java:
public class ExitActivity extends Activity{
@Override protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
if(android.os.Build.VERSION.SDK_INT >= 21){
finishAndRemoveTask();
}
else{
finish();
}
}
public static void exitApplication(Context context)
{
Intent intent = new Intent(context, ExitActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NO_ANIMATION | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
context.startActivity(intent);
}
}
然后,每当您想要强制关闭应用程序并将其从最近的列表中删除时,请调用:
ExitActivity.exitApplication(context);
此解决方案适合我,而不是声明 android:excludeFromRecents="true"因为我希望用户能够在最近列表中看到该应用程序,直到我的应用程序触发以编程方式关闭应用程序。
关于android - 如何从任务管理器中杀死Android应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38517320/