我是Android平台的新手,这可能是一个愚蠢的问题,但是...

如何关闭应用程序?

当我处于应用程序,然后我想离开,我只需单击“主页”并继续,但是我刚刚安装了任务管理器应用程序,但我发现一切都在运行。退出应用程序?还是我每次退出时都需要使用任务管理器?

评论

另请参阅:如何停止应用程序和服务的运行?

#1 楼

如果您使用“返回”按钮退出应用程序,它将在当前活动中调用onDestroy();如果您按HOME,则仅调用onPause()
不要太担心它,活动不会消耗电池,它们只是保留在内存中,以便将来可以更快地打开它们。

我不建议使用其中一种任务杀手应用程序,Android出于某种原因将其存储在内存中,使用任务杀手只是一项额外的服务,需要消耗大量电量。您需要注意的是在后台运行服务(例如Twitter或电子邮件客户端拉服务器)的应用程序,任何具有此类服务的优质应用程序都可以选择将其关闭。

评论


我注意到有几个应用在这种暂停状态下确实会消耗大量电池。即,最新版本的Google Maps和一款名为GalaxIR的游戏。因此,请留意那些不好的违规者,并确保适当地将其关闭。

–keithjgrant
2010-09-24 23:21

如果您误以为是面服务,那您就错了。

–内森·史威文(Nathan Schwermann)
2010-09-24 23:43

确实有可能开发的应用程序开发得不好,并且没有遵循Android应用程序的生命周期。例如,即使在线程被操作系统暂停后(通过按Home键),线程也可以保持活动状态,在这种情况下,应用将继续使用电池。

– jmbouffard
2011-2-4在12:52

我发现当我按下“后退”按钮时,许多应用程序都没有退出。例如:Pandora,G

–克莱尔·尼科尔斯(Clay Nichols)
2012年12月23日在0:32



(我的编辑时间已过期)...。其他无法在“后退”按钮上关闭的应用程序:Pandora(在按Back后甚至可以继续播放),Google Play商店,FaceBook,Podkicker。我正在测试的方法是单击“后退”按钮,直到应用程序消失(通常使我回到首页),然后运行Easy Task Killer。

–克莱尔·尼科尔斯(Clay Nichols)
2012年12月23日下午0:40

#2 楼

我很确定我所读过的所有内容都表明“返回”按钮是退出应用程序的正确方法。

按Home键可使它们在后台运行,直到Android确定它们是不再需要,如果您只需要在应用程序之间切换以检查某事(按住Home几秒钟即可提供最近可以运行的应用程序列表,您可以在大多数手机上切换回该列表),这会很方便,但是可以使用后退按钮告诉应用程序您要关闭它。

评论


按住主屏幕按钮只会列出最近打开的6个应用程序,而不是正在运行的应用程序。

–Loïc Wolff
2010年8月30日13:30

@Loïc:对我来说显示8。

–ale
2011年2月4日在14:19

@ LoicWolff,AlEverett这取决于所使用的启动器和ROM本身。

–t0mm13b
2012年7月17日在16:13

这不是真的。活动不会在Android上在后台运行。

–丹·赫尔姆
13年11月29日在10:55

#3 楼

某些应用程序的菜单中具有“退出”选项。大多数都不是。

您真的不需要为此担心。您可以直接转到接下来需要的任何应用程序。 Android在需要时可以很好地释放资源。

更新:AndroidSpin进行了一些实际的研究。

评论


好的链接,ty :)

–流程
2011年9月2日,16:19

#4 楼

活动不在后台运行

在Android中,活动(即您可以看到的应用程序的一部分)永远不会在后台运行。它们只能在屏幕上运行(并使用电池电源)。无论您是在家还是回到家中,该活动都会停止运行。唯一的区别是Android要求应用程序保存什么数据,因此这两个选项都不是“正确的方法”。这仅取决于您要执行的操作。

首页

如果您使用首页,Android会将应用保持在相同状态,以便稍后再使用它(例如,通过最近的应用列表),它仍将保持您离开状态的状态:在同一屏幕上显示相同的内容。例如,如果它是一个电子邮件应用程序,并且您正在查看一封电子邮件,那么它将记住那封电子邮件,并向您显示相同的电子邮件。

最终(大约半小时后) ,Android会得出结论,您不会返回该应用程序,因此它将重置此状态:下次启动该应用程序时,它将从前/主屏幕开始。继续该示例,电子邮件应用程序将忘记您正在查看的电子邮件和文件夹,并向您显示收件箱。

后退

如果使用后退,您将告诉Android您不想返回该视图。它将立即破坏有关您正在查看内容的信息。下次启动该应用程序时,它将显示前屏幕(例如收件箱)。

正如其他人所说,应用程序可以控制后退按钮的行为:例如,Web浏览器使用它返回浏览器历史记录。我所描述的是后退按钮的默认行为,并敦促开发人员保持这种行为,以免造成混淆。

缓存的后台进程无论您使用哪种方法,Android都会将应用程序尽可能长时间地保留在内存中(但不会运行)。这将更加有效。当您返回应用程序时,如果它仍在内存中,则Android可以立即再次运行它。如果它还没有存储在内存中,则Android必须花费时间和精力再次从存储中加载应用。 “正在运行的应用程序”列表。这对用户来说有点令人困惑-它使人们认为该应用程序确实仍在运行-因此,较新的版本将这些应用程序称为“缓存的后台进程”,以明确它们仅在缓存中而不在运行。

背景应用程序呢?

之前,我说过活动不是在后台运行的。那么您的电子邮件客户端如何检查邮件?除了活动之外,应用程序还可以提供服务。服务没有供您查看或与之交互的GUI,但是它们确实在后台运行。通常,服务只会很少运行,例如每小时检查一次邮件,但是应用程序开发人员可能会一直运行该服务,从而耗尽电池电量。

不进行任何活动或首页不会改变Android如何处理来自同一应用程序的任何服务:该服务可以继续运行,也可以在给定时间稍后触发(下次应进行邮件检查)。

摘要

总而言之,使用back还是home都没有关系:它只会更改应用程序下次运行时显示的内容。它对电池使用没有影响。它们都不对应于在PC上“退出”程序。

评论


我很高兴有人报道了这个!我是一名开发人员,但我曾经在Verizon Wireless工作,当您不需要时,我无法告诉您有多少人对此感到担忧。

–贷款
2014年1月9日在20:23

#5 楼

在Android中,无需关闭应用程序,并且在其他地方需要资源时,操作系统会负责清理所有剩余应用程序的内存。使用任务杀手只会破坏操作系统的正常运行,甚至可能减慢设备的速度,因为始终必须从头开始重新加载应用程序。

Android应用程序生命周期正在以某种方式工作不在顶部的应用程序处于暂停状态,不再使用任何cpu;如果再次打开应用程序,则仅保留内存内容;

这就是说,应用程序开发人员在创建应用程序时有责任遵循应用程序的生命周期,因此可能会发生一些错误或错误,从而导致程序错误。永远不会停止或暂停的应用程序。如果遇到这样的应用程序并关闭它,可以通过在应用程序上选择“强制停止”,通过“设置”->“应用程序”->“管理应用程序”来进行操作。

真的不建议使用在设备上不断运行的任务杀手。

#6 楼

只需添加schwiz的答案,即只需几行代码即可覆盖后退按钮的功能。因此关闭应用程序并不总是可靠的。因此,如果应用程序开发人员不想在按下“后退”按钮时关闭该应用程序,则它不会关闭。

尽管大多数优秀的应用程序开发人员都会在按下应用程序主菜单上的后退按钮时弹出一个警告对话框,询问用户是否打算退出该应用程序,如果您单击退出,它会关闭应用程式。

正确的答案可能是,关闭应用程序完全取决于应用程序开发人员,如果他们希望在按下主屏幕按钮时关闭应用程序,则将退出代码放在onPause()中。如果要在返回按钮上放置它们,请将其放入onBackKeyPressed中。因此,它并不是真正掌握在用户手中。

在不需要时,用户可以避免使用没有提供适当关闭功能的应用。任务管理器不是关闭应用程序的好方法,因为它可能会使应用程序崩溃并且无法给他们提供保存状态的机会。

操作系统会在必要时关闭应用程序,因此您不必担心太多。

编辑:
有一个选项可以销毁应用程序,因为离开应用程序后即单击主页键时。您可以转到Settings-> Developer Options-> Don't keep Activities。尽管它是开发人员选项,但是如果您过于担心后台运行的应用程序,则可以使用此选项。但是请记住,不建议非开发人员使用它。