Loading telephony/java/android/telephony/SmsMessage.java +4 −1 Original line number Diff line number Diff line Loading @@ -493,7 +493,10 @@ public class SmsMessage { String newMsgBody = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsgBody = Sms7BitEncodingTranslator.translate(text, isCdma); // 7-bit ASCII table based translation is required only for CDMA single-part SMS since // ENCODING_7BIT_ASCII is used for CDMA single-part SMS and ENCODING_GSM_7BIT_ALPHABET // is used for CDMA multi-part SMS. newMsgBody = Sms7BitEncodingTranslator.translate(text, isCdma && ted.msgCount == 1); } if (TextUtils.isEmpty(newMsgBody)) { newMsgBody = text; Loading telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +1 −11 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.internal.telephony.cdma; import android.compat.annotation.UnsupportedAppUsage; import android.content.res.Resources; import android.os.Build; import android.sysprop.TelephonyProperties; import android.telephony.PhoneNumberUtils; Loading @@ -28,7 +27,6 @@ import android.text.TextUtils; import android.util.Log; import com.android.internal.telephony.GsmAlphabet.TextEncodingDetails; import com.android.internal.telephony.Sms7BitEncodingTranslator; import com.android.internal.telephony.SmsAddress; import com.android.internal.telephony.SmsConstants; import com.android.internal.telephony.SmsHeader; Loading Loading @@ -416,15 +414,7 @@ public class SmsMessage extends SmsMessageBase { @UnsupportedAppUsage public static TextEncodingDetails calculateLength(CharSequence messageBody, boolean use7bitOnly, boolean isEntireMsg) { CharSequence newMsgBody = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsgBody = Sms7BitEncodingTranslator.translate(messageBody, true /* isCdmaFormat */); } if (TextUtils.isEmpty(newMsgBody)) { newMsgBody = messageBody; } return BearerData.calcTextEncodingDetails(newMsgBody, use7bitOnly, isEntireMsg); return BearerData.calcTextEncodingDetails(messageBody, use7bitOnly, isEntireMsg); } /** Loading telephony/java/com/android/internal/telephony/cdma/sms/BearerData.java +12 −1 Original line number Diff line number Diff line Loading @@ -21,9 +21,11 @@ import android.content.res.Resources; import android.telephony.SmsCbCmasInfo; import android.telephony.cdma.CdmaSmsCbProgramData; import android.telephony.cdma.CdmaSmsCbProgramResults; import android.text.TextUtils; import com.android.internal.telephony.GsmAlphabet; import com.android.internal.telephony.GsmAlphabet.TextEncodingDetails; import com.android.internal.telephony.Sms7BitEncodingTranslator; import com.android.internal.telephony.SmsConstants; import com.android.internal.telephony.SmsHeader; import com.android.internal.telephony.SmsMessageBase; Loading Loading @@ -540,8 +542,17 @@ public final class BearerData { */ public static TextEncodingDetails calcTextEncodingDetails(CharSequence msg, boolean force7BitEncoding, boolean isEntireMsg) { CharSequence newMsg = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsg = Sms7BitEncodingTranslator.translate(msg, true /* isCdmaFormat */); } if (TextUtils.isEmpty(newMsg)) { newMsg = msg; } TextEncodingDetails ted; int septets = countAsciiSeptets(msg, force7BitEncoding); int septets = countAsciiSeptets(newMsg, force7BitEncoding); if (septets != -1 && septets <= SmsConstants.MAX_USER_DATA_SEPTETS) { ted = new TextEncodingDetails(); ted.msgCount = 1; Loading Loading
telephony/java/android/telephony/SmsMessage.java +4 −1 Original line number Diff line number Diff line Loading @@ -493,7 +493,10 @@ public class SmsMessage { String newMsgBody = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsgBody = Sms7BitEncodingTranslator.translate(text, isCdma); // 7-bit ASCII table based translation is required only for CDMA single-part SMS since // ENCODING_7BIT_ASCII is used for CDMA single-part SMS and ENCODING_GSM_7BIT_ALPHABET // is used for CDMA multi-part SMS. newMsgBody = Sms7BitEncodingTranslator.translate(text, isCdma && ted.msgCount == 1); } if (TextUtils.isEmpty(newMsgBody)) { newMsgBody = text; Loading
telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +1 −11 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.internal.telephony.cdma; import android.compat.annotation.UnsupportedAppUsage; import android.content.res.Resources; import android.os.Build; import android.sysprop.TelephonyProperties; import android.telephony.PhoneNumberUtils; Loading @@ -28,7 +27,6 @@ import android.text.TextUtils; import android.util.Log; import com.android.internal.telephony.GsmAlphabet.TextEncodingDetails; import com.android.internal.telephony.Sms7BitEncodingTranslator; import com.android.internal.telephony.SmsAddress; import com.android.internal.telephony.SmsConstants; import com.android.internal.telephony.SmsHeader; Loading Loading @@ -416,15 +414,7 @@ public class SmsMessage extends SmsMessageBase { @UnsupportedAppUsage public static TextEncodingDetails calculateLength(CharSequence messageBody, boolean use7bitOnly, boolean isEntireMsg) { CharSequence newMsgBody = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsgBody = Sms7BitEncodingTranslator.translate(messageBody, true /* isCdmaFormat */); } if (TextUtils.isEmpty(newMsgBody)) { newMsgBody = messageBody; } return BearerData.calcTextEncodingDetails(newMsgBody, use7bitOnly, isEntireMsg); return BearerData.calcTextEncodingDetails(messageBody, use7bitOnly, isEntireMsg); } /** Loading
telephony/java/com/android/internal/telephony/cdma/sms/BearerData.java +12 −1 Original line number Diff line number Diff line Loading @@ -21,9 +21,11 @@ import android.content.res.Resources; import android.telephony.SmsCbCmasInfo; import android.telephony.cdma.CdmaSmsCbProgramData; import android.telephony.cdma.CdmaSmsCbProgramResults; import android.text.TextUtils; import com.android.internal.telephony.GsmAlphabet; import com.android.internal.telephony.GsmAlphabet.TextEncodingDetails; import com.android.internal.telephony.Sms7BitEncodingTranslator; import com.android.internal.telephony.SmsConstants; import com.android.internal.telephony.SmsHeader; import com.android.internal.telephony.SmsMessageBase; Loading Loading @@ -540,8 +542,17 @@ public final class BearerData { */ public static TextEncodingDetails calcTextEncodingDetails(CharSequence msg, boolean force7BitEncoding, boolean isEntireMsg) { CharSequence newMsg = null; Resources r = Resources.getSystem(); if (r.getBoolean(com.android.internal.R.bool.config_sms_force_7bit_encoding)) { newMsg = Sms7BitEncodingTranslator.translate(msg, true /* isCdmaFormat */); } if (TextUtils.isEmpty(newMsg)) { newMsg = msg; } TextEncodingDetails ted; int septets = countAsciiSeptets(msg, force7BitEncoding); int septets = countAsciiSeptets(newMsg, force7BitEncoding); if (septets != -1 && septets <= SmsConstants.MAX_USER_DATA_SEPTETS) { ted = new TextEncodingDetails(); ted.msgCount = 1; Loading