我正在尝试从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" />
我无法找到为什么剩下的文字会被截断。我是否应该添加任何其他权限或所需的任何设置更改?任何想法或帮助将不胜感激。
感谢。
答案 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);