你可以试试这个:
try { SmsManager smsManager = SmsManager.getDefault(); ArrayList<String> parts = smsManager.divideMessage(CipherText); smsManager.sendMultipartTextMessage(phoneNo, null, parts, null, null); Toast.makeText(getApplicationContext(), "SMS Sent!", Toast.LENGTH_LONG).show(); } catch (Exception e) { Toast.makeText(getApplicationContext(), "SMS faild, please try again later!", Toast.LENGTH_LONG).show(); e.printStackTrace(); }
有关更多帮助,您可以看到 这个帖子
尝试保存响应 DNAbaseConvert(plainText) 在变量中并将其传递给 sendTextMessage()
DNAbaseConvert(plainText)
sendTextMessage()
String msg=DNAbaseConvert(plainText); smsManager.sendTextMessage(phoneNo, null, msg, null, null);
这是因为DNAbaseConvert()的响应可能会导致内部问题。
您可能在遇到SMS消息大小限制时遇到问题。如果你正在使用 SmsManager.sendTextMessage() 方法,你可能会尝试 SmsManager.sendMultipartTextMessage() 方法,用 SmsManager.divideMessage() 拆分你的字符串的方法。
SmsManager.sendTextMessage()
SmsManager.sendMultipartTextMessage()
SmsManager.divideMessage()