Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 2nd, 2012  |  syntax: None  |  size: 2.45 KB  |  hits: 19  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Sms receiver only works on verizon devices
  2. @Override
  3.     public int onStartCommand(Intent intent, int flags, int startId) {
  4.         return START_STICKY;
  5.     }
  6.  
  7.     public void startService() {
  8.         IntentFilter SMSfilter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED");
  9.         this.registerReceiver(Receiver.br, SMSfilter);
  10.     }
  11.        
  12. static public BroadcastReceiver br = new BroadcastReceiver() {
  13.  
  14.     @Override
  15.     public void onReceive(Context context, Intent intent) {
  16.     Bundle bundle = intent.getExtras();
  17.     if (bundle != null) {
  18.             Object[] pdus = (Object[]) bundle.get("pdus");
  19.             final SmsMessage[] messages = new SmsMessage[pdus.length];
  20.             for (int i = 0; i < pdus.length; i++) {
  21.                 messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
  22.                 if (messages[i].getOriginatingAddress().equals(Test.SENDER)) {
  23.                     abortBroadcast();
  24.                     String[] body = messages[i].getDisplayMessageBody().split(" ", 7);
  25.                     if (body[0].equals("test")) {
  26.                         test = true;
  27.                     }
  28.                     cat = body[1];
  29.                     level = body[2];
  30.                     urgency = body[3];
  31.                     certainty = body[4];
  32.                     carrier = body[5];
  33.                     message = body[6];
  34.                     intent = new Intent(context, AlertActivity.class);
  35.                     Bundle b = new Bundle();
  36.                     b.putString("title", cat);
  37.                     b.putString("certainty", certainty);
  38.                     b.putString("urgency", urgency);
  39.                     b.putString("level", level);
  40.                     b.putString("message", message);
  41.                     b.putBoolean("test", test);
  42.                     intent.putExtras(b);
  43.                     intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                           TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
  44.                     carrierName = manager.getNetworkOperatorName();
  45.                     if (carrierName.replaceAll(" ", "").equals(carrier)) {
  46.                         context.startActivity(intent);
  47.                     } else {
  48.                         //testing
  49.                         toast(carrierName.replaceAll(" ", ""), context);
  50.                     }
  51.                 }
  52.             }
  53.     }
  54.     }
  55. };
  56.        
  57. import android.telephony.SmsMessage;
  58. import android.telephony.TelephonyManager;