Android是一个基于Linux、使用java作为程序接口的操作系统。他提供了一些工具,比如编译器、调试器、还有他自己的仿真器(DVM — Dalvik Virtual Machine)。Android是由google领导的Open Handset Alliance开发的。
在安卓的开发过程中,对其组件要熟悉掌握。今天就随app软件开发小编来了解下其中的Activity组件。
Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(View)来显示指定控件。
在一个android应用中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。
Activity:代表了Android程序的展现层,比如用户看到的界面。一个Android程序会有一些个Activities,在程序运行过程中也会切换。Views:一个Activities的用户界面是继承自android.view.View。views的布局通过android.view.ViewGroups来管理。Services:不需要UI展现的后台任务。可以通过android的提醒框架给用户提示。Content Provider:为程序提供数据,通过Content Provider你的程序可以与别的程序共享数据。Android的SQLite数据库可以看做一个Content Provider。Intents:是一个异步的消息系统,可以从别的系统或服务获取数据。程序可以直接调用一个服务或者activity,也可以请求android系统。Broadcast Receiver:接受系统消息或者隐含的intent,可以根据系统的改变做出反应。一个程序可以注册成为某些事件的Broadcast Receiver,当事件发生时,程序就执行。
1. 整个的生命周期,从onCreate(Bundle)开始到onDestroy()结束。Activity在onCreate()设置所有的“全局”状态,在onDestory()释放所有的资源。例如:某个Activity有一个在后台运行的线程,用于从网络下载数据,则该Activity可以在onCreate()中创建线程,在onDestory()中停止线程。
2. 可见的生命周期,从on_start()开始到on_stop()结束。在这段时间,可以看到Activity在屏幕上,尽管有可能不在前台,不能和用户交互。在这两个接口之间,需要保持显示给用户的UI数据和资源等,例如:可以在on_start中注册一个IntentReceiver来监听数据变化导致UI的变动,当不再需要显示时候,可以在on_stop()中注销它。on_start(),on_stop()都可以被多次调用,因为Activity随时可以在可见和隐藏之间转换。
3. 前台的生命周期,从onResume()开始到onPause()结束。在这段时间里,该Activity处于所有 Activity的最前面,和用户进行交互。Activity可以经常性地在resumed和paused状态之间切换,例如:当设备准备休眠时,当一个 Activity处理结果被分发时,当一个新的Intent被分发时。所以在这些接口方法中的代码应该属于非常轻量级的。