public class MainMenu extends Activity {
Button exit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mainmenu);
exit=(Button)findViewById(R.id.btn1);
exit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
});
}
}
答案 0 :(得分:0)
使用此标志:
FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
。
此标志将通知操作系统从最近的应用程序的缓存中删除此app/activity
。
intent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
您也可以添加
android:noHistory="true"
android:excludeFromRecents="true"
在您的AndroidManifest
文件中,了解您不希望在最近的应用中看到的活动。
答案 1 :(得分:0)
尝试此操作以退出应用程序
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);
finish();
答案 2 :(得分:0)
如果您确实需要杀死该应用程序,请认真考虑:为什么不让OS找出何时何地释放资源?
否则,如果您非常确定,请使用
结束(); 作为对@dave appleton评论的反应:第一件事是读了大问题/答案组合@gabriel发布:退出一个应用程序 - 是不是不满意了?
现在假设我们有这个问题,这里的问题仍有答案, 如果你正在做任何退出的事情,那就是你需要的代码 是完成()。显然你可以有多个活动等等, 但那不是重点。让我们使用一些用例
您希望让用户因内存使用而退出所有内容 "不在后台运行? Doubtfull。让用户停止确定 活动在后台,但让操作系统杀死任何不需要的人 追索权。您希望用户不要转到您之前的活动 应用程序吗?好吧,要么配置它不要,要么你需要额外的 选项。如果大多数时候back = previous-activity有效,则 如果他/她想要做某事,用户不会回家 其他?如果你需要某种重置,你可以找出是否/如何/等等 您的申请已退出,如果您的活动再次获得关注, 可以采取行动,显示一个新的屏幕,而不是重新启动 你在哪里。所以最后,当然,终点()并没有杀死 everthing,但它仍然是我认为你需要的工具。如果有 用于"杀死所有活动",我还没有找到它
答案 3 :(得分:0)
Android不允许您直接退出app.you只需要在进行任何新活动之前从堆栈中删除当前的活动。
类首先扩展活动{ 的OnCreate(){
Intent i = new Intent(getappcontext(),nextactivity);
stratactivity(ⅰ);
first.this.finish();
}
}