Как отправить SMS более 160 символов?
Как отправить большое SMS в Android. Я использовал:
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(contactNos[j], null,msgs[i], sentPI, deliveredPI);
этот код работает только для 160 символов сообщения. Я также использую
ArrayList<String> msgsplit=sms.divideMessage(msgs[i]);
ArrayList<PendingIntent> listOfIntents = new ArrayList<PendingIntent>();
for (int k=0; k < msgsplit.size(); k++){
Intent sentIntent = new Intent();
PendingIntent pi = PendingIntent.getBroadcast(MultipleMsg.this, 0, sentIntent, PendingIntent.FLAG_CANCEL_CURRENT);
listOfIntents.add(pi);
}
// sendMessage(contactNos[j],msgs[i]);
sms.sendMultipartTextMessage(contactNos[j],null,msgsplit, listOfIntents, null);
Но он отправляет символ нежелательной почты в сообщении.
Кто-нибудь может мне помочь?
Ответы
Ответ 1
Нежелательные символы? метод sendMultipartTextMessage отправляет только сообщение текст. Если вы хотите отправить не текстовое сообщение, вы должны посмотреть на метод sendDataMessage. Ниже приведен фрагмент кода от android cts. В нем есть пример того, как отправлять длинные сообщения.
SmsManager sm = SmsManager.getDefault();
ArrayList<String> parts =sm.divideMessage(LONG_TEXT);
int numParts = parts.size();
ArrayList<PendingIntent> sentIntents = new ArrayList<PendingIntent>();
ArrayList<PendingIntent> deliveryIntents = new ArrayList<PendingIntent>();
for (int i = 0; i < numParts; i++) {
sentIntents.add(PendingIntent.getBroadcast(getContext(), 0, mSendIntent, 0));
deliveryIntents.add(PendingIntent.getBroadcast(getContext(), 0, mDeliveryIntent, 0));
}
sm.sendMultiPartTextMessage(mDestAddr,null, parts, sentIntents, deliveryIntents)
Ответ 2
Попробуйте под кодом, возможно, поможет
SmsManager sms = SmsManager.getDefault();
ArrayList<String> parts = sms.divideMessage(message);
sms.sendMultipartTextMessage(phoneNumber, null, parts, null, null);
Ответ 3
Эмулятор отправляет ненужные символы в этом коде во время определенной проблемы, поэтому используйте apk в реальном мобильном устройстве и проверьте код, я уверен, что ваше приложение не отправит нежелательное сообщение. Все самое лучшее.
Ответ 4
Вы должны получить конкретный короткий код из SMSC, для отправки SMS с символами более 160.