广播 拦截短信 解析出 号码和短信内容

在清单文件中添加权限

<uses-permission android:name="android.permission.RECEIVE_SMS"/>

-<intent-filter android:priority="1000"> 

        <action android:name="android.provider.Telephony.SMS_RECEIVED"/> <!--这个过滤器是定死的,必须使用这个-->

</intent-filter>

在广播中

@Override

public void onReceive(Context context, Intent intent) {

Bundle bundle=intent.getExtras();

Object[] objs=(Object[]) bundle.get(KEY);

SmsMessage[] message=new SmsMessage[objs.length];

for (int i = 0; i < objs.length; i++) {

message[i]=SmsMessage.createFromPdu((byte[])objs[i]);

}

SmsMessage sm=message[0];

String newnumber=sm.getDisplayOriginatingAddress();//获取到的是对方的电话号码

String content=sm.getDisplayMessageBody();//获取到的是短信内容

你可能感兴趣的:(广播,拦截,短信)