发送长短信时,分段发送的编码方式不一致导致接收方出现乱码

  • vendor/mediatek/proprietary/packages/apps/Mms/src/com/android/mms/transaction/SmsSingleRecipientSender.java
--- a/alps/vendor/mediatek/proprietary/packages/apps/Mms/src/com/android/mms/transaction/SmsSingleRecipientSender.java
+++ b/alps/vendor/mediatek/proprietary/packages/apps/Mms/src/com/android/mms/transaction/SmsSingleRecipientSender.java
@@ -25,6 +25,7 @@ import com.mediatek.opmsg.util.OpMessageUtils;
 
 import java.util.ArrayList;
 
+import com.android.internal.telephony.GsmAlphabet;
 
 public class SmsSingleRecipientSender extends SmsMessageSender {
 
@@ -154,6 +155,14 @@ public class SmsSingleRecipientSender extends SmsMessageSender {
             /// M:Code analyze 008, add for concatenation msg @{
             if (messageCount > 1) {
                 intent.putExtra(SmsReceiverService.EXTRA_MESSAGE_CONCATENATION, true);
+                for(int j = 0; j < messageCount; j++){
+                    if(GsmAlphabet.countGsmSeptets(messages.get(j), false) == null){
+                        codingType = SmsMessage.ENCODING_16BIT;
+                        break;
+                    }
+                }
             }
             /// @}
             if (LogTag.DEBUG_SEND) {


猜你喜欢

转载自blog.csdn.net/jydzm/article/details/85756245