2016-12-31 77 views
0

我想优雅地关闭应用程序。我找到了两种方法。要优雅地关闭Android应用程序需要说明

1.使用意图:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_HOME); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

文件说:

活动操作:启动为主要切入点,不希望接收数据。

类别家:这是家庭活动,这是设备启动时显示的第一个活动。

2.使用表面处理:

finish() 

文件说:

调用此当你的活动做和应该被关闭。

什么是关闭Android应用程序的最佳方法或专业方法?两者都关闭应用程序,但finish()在使用时将应用程序从缓存中删除(应用程序不在最近的活动中),缓存不会被删除。在完成活动时应该将缓存从单元格中移除?

+0

“关闭Android应用程序的最佳方法或专业方法是什么?” - 根本不做。 “但完成()从缓存中删除应用程序” - 不,它不,因为一个活动不是一个应用程序。 “应用程序不在最近的活动中” - 'finish()'不会从概览屏幕(a.k.a.,最近的任务列表)中删除应用程序,如果这就是你的意思。 – CommonsWare

回答

2

最好的办法是正确的一个,因为它在官方Doc的说:

调用此当你活动完成,应关闭。 ActivityResult会传播给通过onActivityResult()启动的任何人。

该应用程序是一系列活动。关闭应用程序意味着关闭应用程序的第一个活动。

您在文章中描述的第一种方法(1.使用Intents)似乎是一种解决方法;这与您的设备的物理主页按钮被按下时类似。它允许活动到备份堆栈并启动设备的主页(首页)活动。