第一 定义一个短信广播接收者
public class SmsListenerReceiver extends BroadcastReceiver {
//当短信到来的时候 就会执行这个方法
@Override
public void onReceive(Context context, Intent intent) {
//[1]获取发短信送的号码 和内容
Object[] objects = (Object[]) intent.getExtras().get("pdus");
for (Object pdu : objects) {
//[2]获取smsmessage实例
SmsMessage smsMessage = SmsMessage.createFromPdu((byte[]) pdu);
//[3]获取发送短信的内容
String body = smsMessage.getMessageBody();
//[4]获取发送者
String address = smsMessage.getOriginatingAddress();
System.out.println("body:"+body+"---"+address);
//[5]比如发送短信 扣流量
}
}
}
第二 配置广播接收者
<receiver android:name="com.smslistener.SmsListenerReceiver">
<intent-filter >
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
第三 加入权限
<uses-permission android:name="android.permission.RECEIVE_SMS"/>