您的位置:首页 > 其它

22 广播小小总结

2016-09-21 20:18 246 查看
1,通知


在屏幕之外 展示给用户信息



1,普通的通知
2,大视图通知  使用样式
3,带进度条的通  明确的进度和模糊的进度
4,自定义的通知


一般使用在:消息推送

2,广播接收者 BroadcastReceiver

>1,定义  可以接收某一频道(action) 发送的广播  ,发送者 Activity,Service

>2,作用:
>监听系统的广播进行处理  :电量过低 进行提取 网络状态

系统广播:
1,电量的:Intent.ACTION_BATTERY_CHANGED
2,网络的
3,拨打电话的:android.intent.action.NEW_OUTGOING_CALL
4,短信的:android.provider.Telephony.SMS_RECEIVED
5,打电话的状态:android.intent.action.PHONE_STATE
5,....

>自定义广播 :在服务中下载数据  使用广播进行发送

>3,使用:
>1,创建一个class 继承BroadCastReceiver
>2,重写父类里的方法 onReceiver()
>3,注册广播
>静态注册:在清单文件进行注册
>特点:不管程序是否活动  都可以进行监听
>动态注册:在逻辑代码中注册
>一般在OnResume()里进行注册  在OnPause()方法 取消注册
registerReceiver(myBroadCastReceiver02, intentFilter);
特点:程序活动时  才进行监听
>4,分类

//普通广播   不能中断
sendBroadcast(intent);
//有序广播   可以中断   abortBroadcast();//中断广播
sendOrderedBroadcast(intent, null);

粘性广播:广播一直存在消息容器里  直到有接收者处理广播(弃用)

>5,广播接收者注意事项:
1,广播接受者的生命周期10s,在接收广播时创建  在onReceiver()执行后销毁
2,在广播接收者内不能做耗时操作   ,在主线程执行
3,在广播接收者内不能开启子线程  ,在广播结束后 ,创建的线程容易变成 空线程,很容易被程序回收
4,耗时操作让服务来执行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: