Отправка SMS с данными в Android на телефон CDMA - PullRequest
5 голосов
/ 29 июня 2011

У меня проблемы с методом sendDataMessage() в SmsManager .

Отправка SMS с данными между двумя эмуляторами GSM, по крайней мере, частично работает, но я получаю NullPointerException при использовании того же метода на телефоне Verizon CDMA.

Я нашел эту ссылку на отчет об ошибке для чего-то похожего:

"SmsManager.sendDataMessage () всегда завершается ошибкой на устройствах CDMA, потому что нет пути к кодудля успеха. Отказ можно увидеть в журнале радио, где com.android.internal.telephony.cdma.sms.BearerData.encodeEmsUserDataPayload () генерирует исключение CodingException. "

Но я 'Интересно, нашел ли кто-нибудь обходной путь, чтобы сделать что-то подобное на телефонах CDMA.

1 Ответ

0 голосов
/ 29 июня 2011

Этот код отлично работает как для GSM, так и для CDMA

String sms = message.getText().toString();

            if(PhoneNumberUtils.isWellFormedSmsAddress(dest))
            {
                for(String contact:multiContact)
                {
                    smsManager.sendTextMessage(contact, null, sms, null, null);
                    Toast.makeText(SampleSms.this, "SMS messgae Sent to"+contact, Toast.LENGTH_LONG).show();
                }

            }
            else
            {
                Toast.makeText(SampleSms.this, "SMS messgae Sent failed", Toast.LENGTH_LONG).show();
            }

Я также использовал sendDataMessage(), но получил ошибку.Но приведенный выше код работает нормально

...