Android 使用sendMultipartTextMessage发送长短信

Android 使用sendMultipartTextMessage发送长短信,android,sms,Android,Sms,我使用以下代码: SmsManager sms = SmsManager.getDefault(); ArrayList<String> parts = sms.divideMessage(message); sms.sendMultipartTextMessage(number, null, parts, null, null); smsmsmanager sms=smsmsmanager.getDefault(); ArrayList parts=sms.divideMessa

我使用以下代码:

SmsManager sms = SmsManager.getDefault();
ArrayList<String> parts = sms.divideMessage(message);
sms.sendMultipartTextMessage(number, null, parts, null, null);
smsmsmanager sms=smsmsmanager.getDefault();
ArrayList parts=sms.divideMessage(消息);
sms.sendMultipartTextMessage(数字、空、部分、空、空);
显然,在执行此代码时不会发生错误,但不会收到sms。 发送短消息时,此代码会成功运行(请尝试以下操作:

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)
SmsManager sm=smsmsmanager.getDefault();
ArrayList parts=sm.divideMessage(长文本);
int numParts=parts.size();
ArrayList sentinents=新的ArrayList();
ArrayList deliveryIntents=新建ArrayList();
对于(int i=0;i

***在真正的设备上试用。

即使使用我自己的代码,有时也会收到很长的短信(我认为这是第一次)。可能是手机公司的一些标准或垃圾邮件预防机制在起作用

后来:


是的,运营商似乎根据某些标准(如许多重复字符)过滤消息。似乎我可以通过发送看起来有意义的消息来避免这种情况。

即使使用我自己的代码,有时也会收到长消息(我认为特别是第一次)。可能提供商提供了一些标准或垃圾邮件预防机制。是的,似乎运营商根据一些标准(如许多重复字符)过滤邮件。似乎我可以通过发送看起来有意义的邮件来避免这种情况。