深入广播
单向 群发,只要过滤条件匹配,都能接收到
无序广播
有序广播
发送有序广播
sendOrderedBroadcast(intent, null);//发送有序广播
设置优先级:
android:priority="1000"
拦截:在高优先级的那边进行拦截
//拦截广播
abortBroadcast();
拦截短信
权限
<uses-permission android:name="android.permission.RECEIVE_SMS" />
过滤条件
<intent-filter android:priority="1000">
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
//拦截
abortBroadcast();
拦截拨号 修改拨号
权限
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
过滤条件
<intent-filter android:priority="1000">
<action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
</intent-filter>
String resultData = getResultData();
Log.e("", ""+resultData);
//修改拨出去的号码
setResultData("0592"+resultData);
setResultData("");电话就直接关闭
intent意图
显示意图
隐式意图:过滤条件满足,没有明确指出
过滤条件
action
categery
更多条件
android:scheme="http" 机制,命名机制
android:host="www.baidu.com" 主机名
android:port="8080" 端口号
android:path="/android"路径
android:mimeType="image/png"
点击开启
Intent intent = new Intent();
intent.setAction("www.baidu.com.cn");
Uri data = Uri.parse("http://www.baidu.com:8080/android");
//intent.setData(data );
//intent.setType("image/png");
intent.setDataAndType(data, "image/png");
startActivity(intent );
本文出自 “一路向前” 博客,请务必保留此出处http://963916071.blog.51cto.com/8792403/1411326
原文:http://963916071.blog.51cto.com/8792403/1411326