title: Unable to send SMS on Android
body: <p>I written following code to send sms.</p>
  
  <pre><code>private void sendSMS(String phoneNumber)
  {        
      String SENT = "SMS_SENT";
      String DELIVERED = "SMS_DELIVERED";
      final AlertDialog dialog = new AlertDialog.Builder(this).create();
  
      PendingIntent sentPI = PendingIntent.getBroadcast(this, 0,
      new Intent(SENT), 0);
  
      PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0,
      new Intent(DELIVERED), 0);
  
      //---when the SMS has been sent---
      registerReceiver(new BroadcastReceiver(){
      @Override
      public void onReceive(Context arg0, Intent arg1) {
          switch (getResultCode())
          {
              case Activity.RESULT_OK:
                  dialog.setMessage("SMS is Successfully Sent for Contact Request ");
                  dialog.setTitle("ALERT:SMS Sent");
  
                  dialog.setButton(DialogInterface.BUTTON_POSITIVE, "OK",
                  new DialogInterface.OnClickListener() {
                  public void onClick(DialogInterface dialog, int which) {
                      dialog.dismiss();
                      return;
  
                  }
                  });
                  dialog.show();
                  break;
  
  
              case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
                  Toast.makeText(getBaseContext(), "Generic failure", 
                          Toast.LENGTH_SHORT).show();
                  break;
              case SmsManager.RESULT_ERROR_NO_SERVICE:
                  Toast.makeText(getBaseContext(), "No service", 
                          Toast.LENGTH_SHORT).show();
                  break;
              case SmsManager.RESULT_ERROR_NULL_PDU:
                  Toast.makeText(getBaseContext(), "Null PDU", 
                          Toast.LENGTH_SHORT).show();
                  break;
              case SmsManager.RESULT_ERROR_RADIO_OFF:
                  Toast.makeText(getBaseContext(), "Radio off", 
                          Toast.LENGTH_SHORT).show();
                  break;
            }
           return;
       }
    }, new IntentFilter(SENT));
  
  
  registerReceiver(new BroadcastReceiver(){
      @Override
      public void onReceive(Context arg0, Intent arg1) {
          switch (getResultCode())
          {
              case Activity.RESULT_OK:
                  Toast.makeText(getBaseContext(), "SMS delivered", 
                          Toast.LENGTH_SHORT).show();
                  break;
              case Activity.RESULT_CANCELED:
                  Toast.makeText(getBaseContext(), "SMS not delivered", 
                          Toast.LENGTH_SHORT).show();
                  break;                        
          }
      }
    }, new IntentFilter(DELIVERED));        
  
    SmsManager sms = SmsManager.getDefault();
    sms.sendTextMessage(phoneNumber, null, messageToSend, sentPI, deliveredPI);      
  }
  </code></pre>
  
  <p>The code is running successfully in Emulator but not in phone.
  It shows the following error</p>
  
  <pre><code>            case SmsManager.RESULT_ERROR_NO_SERVICE:
              Toast.makeText(getBaseContext(), "No service",);
  </code></pre>
  
  <p>I have given the required permissions and have SIM(with enough balance)  in the phone as well.</p>