smsManager.sendTextMessage不起作用

时间:2012-05-25 10:03:42

标签: android sms

我有以下事件以编程方式发送短信。然而似乎没有工作,出现了toast pop up并且logcat中没有条目,只是没有创建消息。我还为清单文件添加了适当的权限。

任何建议?

 private Runnable SMSRunnable = new Runnable()
 {
     public void run()
     {      
         smsManager = SmsManager.getDefault();

        smsNumber = edittextSmsNumber.getText().toString();
        smsText = edittextSmsText.getText().toString();


        smsManager.sendTextMessage(smsNumber, smsNumber, smsNumber , null, null);

     }
 };

4 个答案:

答案 0 :(得分:11)

试试这个。

SmsManager sms = SmsManager.getDefault();
PendingIntent sentPI;
String SENT = "SMS_SENT";

sentPI = PendingIntent.getBroadcast(this, 0,new Intent(SENT), 0);

sms.sendTextMessage(phoneNumber, null, message, sentPI, null);

答案 1 :(得分:1)

这对我有用:

PendingIntent pi = PendingIntent.getActivity(this, 0,
        new Intent(this, Next.class), 0); 
//Next is the class to move when message sent
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage("phno", null, "message", null, null);

答案 2 :(得分:1)

实际上这对我有用:

String messageText = "...YOUR TEXT HERE...";
SmsManager sm = SmsManager.getDefault();
sm.sendTextMessage("PHONE NUMBER HERE", null, messageText, null, null);

为了确保这一点,您将无法找到邮件历史记录中发送的邮件。

答案 3 :(得分:1)

我花了很多时间,然后我发现我可以只添加国家/地区代码。对我来说,前期" + 91"在电话号码像冠军一样工作之前。

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