项目中碰到的需要对固定端口发送过来的短信进行解析,并且根据短信的类容作出相应的行为。查了好久,网上也有大量的资料,但是感觉都不能满足自己的要求。最后把大家的方法都看了一下,最后糅合出适合自己的,可以实现对固定号码发过来的短息进行监听。
简单的说来就是写一个类继承自BroadCastReceiver,代码如下:
public class SmsBroadcastReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(SMS_RECEIVED)) {
StringBuffer SmsAddress = new StringBuffer();
StringBuffer SmsContent = new StringBuffer();
Bundle bundle = intent.getExtras();
if (bundle != null) {
Object[] pdusObjects = (Object[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdusObjects.length];
for (int i = 0; i < pdusObjects.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[]) pdusObjects[i]);
}
for (SmsMessage mes