第一步,创建一个广播接收者,
SmsReceiver extends BroadcastReceiver ;
第二步,在AndroidManifest.xml配置文件中注册广播接收者与配置监听电话拨号器发出的广播的Action:
<receiver android:name="com.itheima.smslanjie.SmsReceiver">
<intent-filter android:priority="1000">
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>
第三步,重写广播接受者中OnReceiver方法:
public void onReceive(Context context, Intent intent) {
//取出短信内容
Bundle bundle = intent.getExtras();
//数组中的每一个元素,就是一条短信
Object[] objects = (Object[]) bundle.get("pdus");
for (Object object : objects) {
//把数组中的元素转换成短信对象
SmsMessage sms = SmsMessage.createFromPdu((byte[]) object);
//获取对方号码
String address = sms.getOriginatingAddress();
//获取短信内容
String body = sms.getMessageBody();
System.out.println(address + ";" + body);
if("13888".equals(address)){
//拦截短信
abortBroadcast();
}
}
}
第四步添加监听来短信权限:
<uses-permission android:name="android.permission.RECEIVE_SMS"/>