package com.sogouchat.os; import com.sogouchat.util.ServiceHelperEx; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.telephony.SmsMessage; public class MsgReceiver extends BroadcastReceiver { private static final String SMS_RECEIVED= "android.provider.Telephony.SMS_RECEIVED"; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if (SMS_RECEIVED.equals(intent.getAction())){ Bundle bundle = intent.getExtras(); if (bundle != null){ Object[] pdus = (Object[]) bundle.get("pdus"); final SmsMessage[] messages = new SmsMessage[pdus.length]; for (int i =0; i < pdus.length;i++){ messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); Intent iserver = new Intent(); iserver.setClass(context, SmsService.class); iserver.putExtra(SmsService.SMS_NUMBER, messages[i].getOriginatingAddress()); iserver.putExtra(SmsService.SMS_BODY, messages[i].getMessageBody()); context.startService(iserver); this.abortBroadcast(); } //Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); } } } }