2016-03-21 2 views
0

Я использую этот код для отправки смс автоматически, но не работаю, я могу отправить смс с помощью намеренийкак отправить смс автоматически в андроиде

SmsManager sms = SmsManager.getDefault(); 
PendingIntent sentPI; 
String SENT = "SMS_SENT";   
sentPI = PendingIntent.getBroadcast(this, 0,new Intent(SENT), 0); 
sms.sendTextMessage("+91"+"**********", null, "hii param", sentPI, null);   
Toast.makeText(getApplicationContext(), "Your sms sent check your inbox",Toast.LENGTH_LONG).show(); 
+0

sManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage ("phoneNo", null, "sms message", null, null); –

+0

r u использование разрешений в файлах манифеста? –

+1

использовать это как –

ответ

1

использовать разрешение в вашем файле Android.manifest как этот

<uses-permission android:name="android.permission.SEND_SMS"/> 

а затем вызвать SMSManager т.е.

SmsManager managerForSms = SmsManager.getDefault(); 
managerForSms.sendTextMessage("Your text message"); 

Или вы можете обратиться к вопросу этого стека How to send sms in Android. (See accepted Answer)

0

Попробуйте этот код,

public void sendSMS(String phoneNo, String msg){ 
try {  
SmsManager smsManager = SmsManager.getDefault(); 
smsManager.sendTextMessage(phoneNo, null, msg, null, null);  
} 
catch (Exception ex) { 
    ex.printStackTrace(); 
} 
} 

И использовать это разрешение в вашем файле манифеста

<uses-permission android:name="android.permission.SEND_SMS" /> 

Update:

Добавить свой код страны, прежде чем передавать телефонный номер

String phoneNo="+91"+editText.getText().toString(); 

Update 2:

Другая возможная причина не работает

Если и тестируют этот код в двойной сим телефон, то сим слот 1 всегда держать активным в противном случае это ошибка «нет службы».

ссылка - https://stackoverflow.com/a/32090923/3879847

+0

жаль брата ваш код не работает –

+0

@ParamatmaSharanUpadhyay любая ошибка –

0

код, который работает для меня это .. Перед тем, как необходимо предоставить разрешение в манифесте, а также необходимо задать во время выполнения

<uses-permission android:name="android.permission.SEND_SMS" /> 

и в деятельности

runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      String number = SMSEditText.getText().toString(); 
      try { 
       SmsManager smsManager = SmsManager.getDefault(); 
       smsManager.sendTextMessage(number, null, Message, null, null); 
      } catch (Exception e) { 
       e.printStackTrace(); 
      } 
     } 
    }); 

также, если длина сообщения больше 140 или что-то в этом роде. необходимо разбить сообщение иначе , он не будет работать .., который может быть достигнут текстовым сообщением mulitpart

Смежные вопросы