Android отправляет одно и то же сообщение два раза - PullRequest
0 голосов
/ 04 февраля 2011

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

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();
}

Ответы [ 2 ]

0 голосов
/ 24 января 2012

У меня была такая же проблема с телефоном 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. Работает и с небольшими текстовыми сообщениями!

0 голосов
/ 04 февраля 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...