background image

Android 应用程序之手动退出

不止一次,也不止一个人问过这个问题。我都回答了:不需要。但是,还是要记录下来。

我们不妨从了解这个系统对于应用程序管理的一些内部机制开始说明原因。

对于

Android 系统而言,包含”进程”和”服务”。”进程”有正在运行的,也有刚刚离开在

后台缓存的。

”服务”是一个无界面、长时间运行的应用功能,并且不会轻易被终止。

我们知道,在

Android 中可以快速通过主页键(home)或者使用返回键(←)逐步离

开应用程序。

主页键:

在当前运行的应用程序的任意界面,按下主页键会快速回到手机主屏幕。同时这个应用

程序的进程将在后台被暂停并建立缓存,再次启动应用程序时可以方便地返回刚才的界面。
(现场被保留)

当然,在你按下主页键回到手机主屏幕时,因设计需要,也有可能会在后台运行一个

甚至多个进程和服务,以保证这个应用程序在后台是

”活的”。(比如音乐正在播放时)

尽管我们知道了后台会产生各种各样的

”进程”与”服务”,但你并不用担心它们会把你

的手机拖累。当运行新的应用程序发现内存可能不够用时,系统会自动在后台释放部分缓存
在后台的进程,以保障可运行新的应用程序。这是一个智能的、良性的供给体系。

返回键:

Android 系统使用返回键来进行屏幕后退,以及关闭对话框/菜单/屏幕键盘。

对于传统的本地客户端应用程序,每个屏幕可以理解为一个活动(

Activity)。通过返

回键可以快速回退到当前应用程序的上一个活动,也可以离开当前应用程序打开的新的应
用程序的某个活动。

所有的活动呈堆栈结构(一种串行形式的数据结构),正在运行的活动处在最顶端。当

你按下返回键,会清除当前活动并恢复上一个活动。如下面的【图

1】示例: