Android应用中的Activity指具有屏幕显示支持用户交互的基本模块,类似于Java ME中的MIDlet, Windows 应用中的Form。比如可以是拨号,发送邮件的UI。每个Activity都可以含有一个Windows用于绘制用户界面。这个Windows提出占据整个屏幕,但也可以只占据部分屏幕或说现在在其它UI上面。
一个Android应用通常由多个Activity组成,其中有一个“主Activity”,为用户启动应用时第一个显示的UI。Activity可以启动其它Activity来实现其它功能。新的Activity又可以再启动新的Activity。新启动的Activity的UI将覆盖之前的UI。从而形成一个“UI栈”。新启动的Activity将暂停上一个Activity的运行。当用户按“BACK”按键时,“UI栈”最上的Activity出栈,之前的UI重新显示在屏幕上并恢复该UI对应的Activity的运行。这意味着Activiy具有一个“生命周期”。
写过MIDlet或是Windows Mobile应用的对以上“生命周期”不会陌生。MIDlet 也有类似的生命周期。Windows Form 也有Load, Unload , Active 等事件。和桌面系统不太一样的说,一般来说移动应用的生命周期不受应用本身控制,而是有手机操作系统来决定。Activity则实现对每个生命周期事件的处理来完成某个功能。比如在onCreate()事件中调用setContentView()来设置UI布局。在onPause()事件中暂停下载,使用GPS等,在onResume()事件中恢复下载,重连GPS设备等。