Showing posts with label Message Notification. Show all posts
Showing posts with label Message Notification. Show all posts

Saturday, October 8, 2011

Listening incoming sms message in Android

The following code shows "how to get notification when android mobile receive a message"

We will use only Broadcast Receiver's method not any URI query or something else.


So let's create a simple android app, then delete default Activity and create new java class
which extends Broadcast-receiver  look like this

SMSNotification.java
  
package com.rdc;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.util.Log;
import android.widget.Toast;


public class SMSNotification extends BroadcastReceiver {
  
  @Override
  public void onReceive(Context context, Intent intent) {  
  
  Toast.makeText(context,"Wow! we got a Message :)",Toast.LENGTH_SHORT).show();
  
 Bundle bundle = intent.getExtras();
 SmsMessage[] msgs = null;
 String str = "";
 if(bundle != null){
  Object[] pdus = (Object[]) bundle.get("pdus");
  msgs = new SmsMessage[pdus.length];
  for(int i=0; i<msgs.length;i++){
   msgs[i]= SmsMessage.createFromPdu((byte[])pdus[i]);
   str += "SMS from: " +msgs[i].getOriginatingAddress();
   str +="\n"+"Message is:";
   str += msgs[i].getMessageBody().toString();
   str +="\n";
  }
  
  Log.v("Debug", str);
  Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
 } 
   }
}


AndroidManifest.xml
  


      
   
 
 
 
 
 
  

  
    
      
      
      
      
      
       
    

    


output is like this

cheers!!

I'd love to hear your thoughts!