需要澄清如何优雅地关闭Android应用程序

需要澄清如何优雅地关闭Android应用程序,android,android-intent,activity-finish,Android,Android Intent,Activity Finish,我想优雅地关闭应用程序。我找到了两种方法 1。使用意图: Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); finish() 文件说: 活动操作:作为主入口点启动,不希望接收数据 类别主页:这是主页活动,即设备启动时显

我想优雅地关闭应用程序。我找到了两种方法

1。使用意图:

Intent intent = new Intent(Intent.ACTION_MAIN);
 intent.addCategory(Intent.CATEGORY_HOME);
 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 startActivity(intent);
finish()
文件说:

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

类别主页:这是主页活动,即设备启动时显示的第一个活动

2。使用Finish:

Intent intent = new Intent(Intent.ACTION_MAIN);
 intent.addCategory(Intent.CATEGORY_HOME);
 intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
 startActivity(intent);
finish()
文件说:

当您的活动完成并应关闭时调用此选项


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

正如官方文件中所述,最好的方法是正确的:

当您的活动完成且应关闭时调用此按钮。ActivityResult将通过onActivityResult()传播回启动您的人

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


您在文章中描述的第一种方法(1.使用意图)似乎是一种变通方法;这与按下设备的物理主按钮类似。它允许活动返回到后堆栈,并启动设备的主(第一个)活动。

最好的方法是正确的方法,正如官方文件中所说:

当您的活动完成且应关闭时调用此按钮。ActivityResult将通过onActivityResult()传播回启动您的人

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


您在文章中描述的第一种方法(1.使用意图)似乎是一种变通方法;这与按下设备的物理主按钮类似。它允许活动返回到后台堆栈,并启动设备的主(第一个)活动。

关闭Android应用程序的最佳方法或专业方法是什么?--根本不这样做。“但是finish()会将应用程序从缓存中删除”--不,不会,因为活动不是应用程序。“应用程序不在最近的活动中”-finish()不会从概览屏幕(又称最近的任务列表)中删除应用程序,如果这是您的意思。“关闭Android应用程序的最佳方法或专业方法是什么?”--根本不这样做。“但是finish()会将应用程序从缓存中删除”--不,不会,因为活动不是应用程序。“应用程序不在最近的活动中”-finish()不会从概览屏幕(又称最近的任务列表)中删除应用程序,如果这是您的意思的话。