您的位置:首页 > 移动开发 > Android开发

Android四大组件详解

2015-08-03 20:56 204 查看
Android四大组件:

1.Activity:程序与用户交互的窗口,每一个Activity对应一个界面,是Android中最基本的一块。
通俗一点说Activity就是一个界面,这个界面里面可以放置各种控件


生命周期:
这些方法都是两两对应的,onCreate创建与onDestroy销毁;onStart可见与onStop不可见;
onResume可编辑(即焦点)与onPause;那么就只剩下一个onRestart方法了,这个方法在什么时候调用呢?
答案就是:在Activity被onStop后,但是没有被onDestroy,在再次启动此Activity时就调用onRestart(而不再调用onCreate)方法;
如果被onDestroy了,则是调用onCreate方法。

2.Service: android系统中的服务,长期运行在后台,没有界面,不直接参与用户交互。
Service的使用步骤:
               1.  要继承service类,实现自己的service。
               2.:在androidManifest.xml中进行注册
               3.:在activity中进行启动、绑定、解绑或者停止service。

Service的生命周期:
StartService的生命周期为:onCreate -->?onStartCommand(可多次调用) --> onDestroy。
BindService的生命周期为:onCreate --> onBind(只一次,不可多次绑定) --> onUnbind --> onDestory。

3.Content Provider :内容提供者,可以向第三方应用提供数据共享,如短信,联系人等。
向外提供统一的接口模型,大大的简化了上层应用,对数据的整合提供了更方便的途径。

4.BroadCastReceiver
bindService的步骤:
1.创建一个服务,在服务的内部写一个内部类,这个内部类需要继承Binder类并且实现一个定义好通信规则的接口.
2.在Service的onBind方法中,去创建这个内部类的对象并且返回;
3.在Activity的onServiceConnected方法中,将其IBinder强制类型转换成刚才定义的接口
4.用接口对象去调用相应的方法



bindService 的特点:
1.以这种方式启动的Service,其生命周期会跟绑定他的Activity绑定在一起。如果说Activity退出,那么服务也会跟着退出。
2.这种方式会得到一个控制服务的IBinder对象,通过这个IBinder对象,可以控制服务做一些工作,让用户能够间接地跟服务进行通信.

startService的特点:
1.以这种方式运行的服务,其生命周期跟启动他的Activity无关,即使Activity退出了,Service依然在运行。
2.这种方式启动的服务,无法得到控制服务的对象。但是可以通过在Service中动态注册广播接收者,然后在Activity中以发送广播的形式来控制服务。


阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: