This week only. Pastebin PRO Accounts Christmas Special! Don't miss out!Want more features on Pastebin? Sign Up, it's FREE!
Guest

Untitled

By: a guest on Feb 6th, 2014  |  syntax: None  |  size: 3.33 KB  |  views: 37  |  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. package gates.apps.automaticmessageresponder;
  2.  
  3. import android.app.Activity;
  4. import android.content.ComponentName;
  5. import android.content.pm.PackageManager;
  6. import android.os.Bundle;
  7. import android.view.Menu;
  8. import android.view.View;
  9.  
  10. public class MainActivity extends Activity {
  11.  
  12.     @Override
  13.     protected void onCreate(Bundle savedInstanceState) {
  14.         super.onCreate(savedInstanceState);
  15.         setContentView(R.layout.activity_main);
  16.     }
  17.    
  18.    
  19.     public void register(View view){
  20.         ComponentName receiver = new ComponentName(this, SmsReceiver.class);
  21.             PackageManager pm = this.getPackageManager();
  22.             pm.setComponentEnabledSetting(receiver,
  23.        
  24.                     PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
  25.        
  26.                     PackageManager.DONT_KILL_APP);
  27.        
  28.        
  29.     }
  30.     public void unRegister(View view){
  31.        
  32.         ComponentName receiver = new ComponentName(this, SmsReceiver.class);
  33.        
  34.             PackageManager pm = this.getPackageManager();
  35.             pm.setComponentEnabledSetting(receiver,
  36.        
  37.                     PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
  38.        
  39.                     PackageManager.DONT_KILL_APP);
  40.        
  41.     }
  42.    
  43.    
  44.    
  45.     @Override
  46.     public boolean onCreateOptionsMenu(Menu menu) {
  47.         // Inflate the menu; this adds items to the action bar if it is present.
  48.         getMenuInflater().inflate(R.menu.main, menu);
  49.         return true;
  50.     }
  51.    
  52. }
  53.  
  54.  
  55. ======= another class ====
  56. package gates.apps.automaticmessageresponder;
  57.  
  58. import android.content.BroadcastReceiver;
  59. import android.content.Context;
  60. import android.content.Intent;
  61. import android.os.Bundle;
  62. import android.telephony.SmsManager;
  63. import android.telephony.SmsMessage;
  64. import android.util.Log;
  65. import android.widget.Toast;
  66.  
  67.  
  68.  
  69. public class SmsReceiver extends BroadcastReceiver {
  70.  
  71.         // Get the object of SmsManager
  72.         final SmsManager sms = SmsManager.getDefault();
  73.  
  74.         @Override
  75.         public void onReceive(Context context, Intent intent) {
  76.                 // TODO Auto-generated method stub
  77.                
  78.                
  79.                 // Retrieves a map of extended data from the intent.
  80.                 final Bundle bundle = intent.getExtras();
  81.                  
  82.                 try {
  83.                      
  84.                     if (bundle != null) {
  85.                          
  86.                         final Object[] pdusObj = (Object[]) bundle.get("pdus");
  87.                          
  88.                         for (int i = 0; i < pdusObj.length; i++) {
  89.                              
  90.                             SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);
  91.                             String phoneNumber = currentMessage.getDisplayOriginatingAddress();
  92.                              
  93.                             String senderNum = phoneNumber;
  94.                             String message = currentMessage.getDisplayMessageBody();
  95.                  
  96.                             Log.i("SmsReceiver", "senderNum: "+ senderNum + "; message: " + message);
  97.                              
  98.                  
  99.                            // Show alert
  100.                             int duration = Toast.LENGTH_LONG;
  101.                             Toast toast = Toast.makeText(context, "senderNum: "+ senderNum + ", message: " + message, duration);
  102.                             toast.show();
  103.                            
  104.                            
  105.                            
  106.                            
  107.                            
  108.                            
  109.                              
  110.                         } // end for loop
  111.                       } // bundle is null
  112.                  
  113.                 } catch (Exception e) {
  114.                     Log.e("SmsReceiver", "Exception smsReceiver" +e);
  115.                      
  116.                 }
  117.                
  118.                
  119.                
  120.                
  121.         }
  122.        
  123.        
  124.        
  125.        
  126.        
  127.        
  128.        
  129.        
  130.        
  131.        
  132.        
  133.        
  134.        
  135.        
  136.        
  137.        
  138.        
  139. }
clone this paste RAW Paste Data