消息未完全发送。有些文字丢失了

时间:2013-11-04 08:03:33

标签: android sms messages

我正在尝试从Android应用程序发送短信。一切正常,但有些文字丢失了。这是我的代码:

String phoneNumber = "99********";  //Masked the number intentionally.
String message = "";
message += "This is Prabha, and thanks for using my application. ";
message += "Hope you enjoy this application. ";
message += "If you face any problem or issue, you can report the issue to our ";
message += "official mail id: pbha701@yahoo.com.";

SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneNumber, null, message, null, null);

我收到了这条消息,但还没有收到。有些文字丢失了。我只收到以下文字:

This is Prabha, and thanks for using my application. Hope you enjoy this application. If you face any problem or issue, you can report the issue to our officia

我在AndroidManifest.xml中添加了以下权限:

<uses-permission android:name="android.permission.SEND_SMS" />

我无法找到为什么剩下的文字会被截断。我是否应该添加任何其他权限或所需的任何设置更改?任何想法或帮助将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:1)

您需要使用sendMultipartTextMessage()类中提供的SmsManager方法。

sendTextMessage()类中提供的

SmsManager方法只能发送长度为160个字符的短信。

要发送多部分SMS,请使用SmsManager类中提供的divideMessage()方法划分消息。然后将此parts作为参数发送到sendMultipartTextMessage(),如下所示:

SmsManager smsManager = SmsManager.getDefault();
ArrayList<String> parts = smsManager.divideMessage(message); 
smsManager.sendMultipartTextMessage(phoneNumber, null, parts, null, null);