Android四大基本组件:Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收者。
一、activity:就是我们通常说的一个屏幕或窗口。
1、生命周期(七个方法,三个生命周期)
2、调用声明周期的方法:
<1>按home键
<2>和打开另外一个窗口,再按返回键
<3>横竖屏切换
<4>Activity的状态保存和恢复
3、在Activity之间传递数据(Intent)
<1>传递基本数据类型
基本数据类型:整:byte short int long
浮点:float double
布尔:boolean
字符:char
引用:String
<2>传递数据包Bundle (集装箱)
<3>传递对象(对象集合)
二、Service(服务):是一段长生命周期的没有用户界面的程序。
1、服务的分类
注意:
2、本地服务
<1>onCreate
<2>onBind(Intent intent)
<3>onStart(Intent intent,int startId) onStartCommand
<4>onDestroy
3、如果要进行耗时操作,可以使用线程。或者使用Service的子类IntentService
注意:
三、BroadcastReceiver(广播接收者)
1、创建广播
2、广播类别
<1>有序广播
<a>普通广播不能中断,有序广播可以中断(abortBroadcast());
<b>优点:按优先级的不同,优先Receiver对数据进行处理,并传给下一个Receiver。设置优先级:在<intent-filter>节点中添加Android:priority属性,取值范围:-1000—1000
<c>缺点:效率低
<2>黏性广播
<a>作用:主要为了解决在发送完广播之后,动态注册的接收者,也能收到广播
<b>权限:
<3>系统广播
<a>开机启动
<b>SD卡已经加载完成:Intent.ACTION_MEDIA_MOUNTED
<c>收到短信:
<d>通话状态:
来电:
去电:
<f>屏幕状态:
四、Content Provider(内容提供者):用来共享应用程序内的数据,该组件对外提供了其他应用可以直接访问的增删改查方法
1、创建Content Provider:
定义类继承Content Provider,根据需要重写内部方法:
Uri匹配器:
在清单文件<provider>配置:
2、访问Content Provider:
3、系统提供的Content Provider: