2011-02-04 2 views
0

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

sendButton.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View v) 
     { 
      msg = messgeText.getText().toString(); 
      no = phoneNumber.getText().toString(); 
      if(msg.length() > 0 && no.length() > 0) 
       sendSMS(no, msg); 
     } 
    }); 

и здесь SendSMS

private void sendSMS(String phoneNumber, String message) 
{      
    SmsManager.getDefault().sendTextMessage(phoneNumber, null, message, null, null); 
    Log.d("Insend", "sms sent"); 
    Toast.makeText(SendSMS.this, "SMS Successfully sent.", Toast.LENGTH_SHORT).show(); 
    finish(); 
} 
+0

Куда вы это положили? Это в вашем onCreate? – xil3

+0

nope при нажатии кнопки – ingsaurabh

+0

Куда вы поместили этот метод .. onClick или метод onTouch или в обоих? Сначала очистите его. –

ответ

0

Я думаю, обработчик вызывается дважды. так что вам нужно понять, почему? предположим, что вы используете onKeyListener, нужно различать, является ли он onKeyUp или onKeyDown. Поскольку вы используете onClick, я не уверен, почему его зовут дважды!

+0

Привет, как вы можете видеть, я поставил журнал этот журнал печатается только один раз, поэтому его не вызывают снова и снова – ingsaurabh

0

У меня была такая же проблема с телефоном HTC tatoo.

Используя следующий код, странно решила проблему!

private void sendSMS(String to, String text) { 
    SmsManager sms = SmsManager.getDefault(); 
    ArrayList<String> messages = sms.divideMessage(text); 
    sms.sendMultipartTextMessage(to, null, messages, null, null); 
} 

Обратите внимание на использование sendMultipartTextMessage. Он также работает с небольшими текстовыми сообщениями!

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