四大组件:
收音机: 接受广播
电池充电完毕
短信到来了
程序安装卸载
sd卡卸载 安装
2.在清单文件配置关心的动作(就是你监听那个广播)
3.一旦广播事件发生了,就会执行广播接受者的onreceive方法
短信到来的广播接受者 4.4以后就不能用了
Activity
Content provider 内容提供者Broadcast receiver 广播接受者
Service 服务
电台: 发送广播收音机: 接受广播
android系统下的广播:
电池电量低。电池充电完毕
短信到来了
程序安装卸载
sd卡卸载 安装
步骤L
1.写一个类继承广播接受者(BroadcastReceiver)2.在清单文件配置关心的动作(就是你监听那个广播)
3.一旦广播事件发生了,就会执行广播接受者的onreceive方法
短信到来的广播接受者 4.4以后就不能用了
4.2
写一个文本数据:
/**
* getSharedPreferences 用来存一般的文本数据
* 第一个参数为要设置的名字
* 第一个参数为要设置的模式
* */
sp =this. getSharedPreferences("config", MODE_PRIVATE);
Editor editor = sp.edit();
editor.putString("ipnumber", number);
editor.commit();
获取:
SharedPreferences sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
setResultData(sp.getString("ipnumber", "") + number);
getResultData和setResultData只对有序广播有用
/**
* 发送无序广播
* */
public void send1(View v){
Intent intent = new Intent();
intent.setAction("com.sqf.broadcasttest.songwennuan");
intent.putExtra("msg", "发1万元");
sendBroadcast(intent);//无序广播,不可以被拦截,不可终止
}
/**
* 发送有序广播
* */
public void send2(View v){
Intent intent = new Intent();
intent.setAction("com.sqf.broadcasttest.songwennuan");
//有序广播,可以被拦截,可终止,可以修改数据
/**
* sendOrderedBroadcast参数
* 1。 intent
* 2.接受者权限 String naming a permissions that a receiver must hold
* in order to receive your broadcast. If null,
* no permission is required.
* 3.最终广播发给谁,这个广播不可用被拦截 Your own BroadcastReceiver to treat as the final receiver of the broadcast.
* 4. A custom Handler with which to schedule the resultReceiver callback; if null it will be scheduled in the Context's main thread.
5. An initial value for the result code. Often Activity.RESULT_OK.
6.要初始的数据
7.是否在intent中添加数据
* */
sendOrderedBroadcast(intent, null , new finalReceiver(), null, 0,"要给农民兄弟发10000元", null);
}