Loading telephony/java/android/telephony/SmsMessage.java +11 −0 Original line number Diff line number Diff line Loading @@ -1019,6 +1019,17 @@ public class SmsMessage { return mWrappedSmsMessage.isReplyPathPresent(); } /** * Return the encoding type of a received SMS message, which is specified using ENCODING_* * GSM: defined in android.telephony.SmsConstants * CDMA: defined in android.telephony.cdma.UserData * * @hide */ public int getReceivedEncodingType() { return mWrappedSmsMessage.getReceivedEncodingType(); } /** * Determines whether or not to use CDMA format for MO SMS. * If SMS over IMS is supported, then format is based on IMS SMS format, Loading telephony/java/com/android/internal/telephony/SmsMessageBase.java +15 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.internal.telephony; import static com.android.internal.telephony.SmsConstants.ENCODING_UNKNOWN; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build; import android.telephony.SmsMessage; Loading Loading @@ -93,6 +95,15 @@ public abstract class SmsMessageBase { @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) protected boolean mMwiDontStore; /** * The encoding type of a received SMS message, which is specified using ENCODING_* * GSM: defined in android.telephony.SmsConstants * CDMA: defined in android.telephony.cdma.UserData * * @hide */ protected int mReceivedEncodingType = ENCODING_UNKNOWN; /** * Indicates status for messages stored on the ICC. */ Loading Loading @@ -512,4 +523,8 @@ public abstract class SmsMessageBase { return mRecipientAddress.getAddressString(); } public int getReceivedEncodingType() { return mReceivedEncodingType; } } telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +4 −0 Original line number Diff line number Diff line Loading @@ -780,6 +780,7 @@ public class SmsMessage extends SmsMessageBase { mUserData = mBearerData.userData.payload; mUserDataHeader = mBearerData.userData.userDataHeader; mMessageBody = mBearerData.userData.payloadStr; mReceivedEncodingType = mBearerData.userData.msgEncoding; } if (mOriginatingAddress != null) { Loading Loading @@ -860,6 +861,9 @@ public class SmsMessage extends SmsMessageBase { Rlog.w(LOG_TAG, "BearerData.decode() returned null"); return null; } if (bData.userData != null) { mReceivedEncodingType = bData.userData.msgEncoding; } if (Rlog.isLoggable(LOGGABLE_TAG, Log.VERBOSE)) { Rlog.d(LOG_TAG, "MT raw BearerData = " + HexDump.toHexString(mEnvelope.bearerData)); Loading telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +17 −16 Original line number Diff line number Diff line Loading @@ -1404,10 +1404,10 @@ public class SmsMessage extends SmsMessageBase { break; case 1: // 8 bit data //Support decoding the user data payload as pack GSM 8-bit (a GSM alphabet string //that's stored in 8-bit unpacked format) characters. if (r.getBoolean(com.android.internal. R.bool.config_sms_decode_gsm_8bit_data)) { // Support decoding the user data payload as pack GSM 8-bit (a GSM alphabet // string that's stored in 8-bit unpacked format) characters. if (r.getBoolean(com.android.internal .R.bool.config_sms_decode_gsm_8bit_data)) { encodingType = ENCODING_8BIT; break; } Loading Loading @@ -1492,6 +1492,7 @@ public class SmsMessage extends SmsMessageBase { encodingType == ENCODING_7BIT); this.mUserData = p.getUserData(); this.mUserDataHeader = p.getUserDataHeader(); this.mReceivedEncodingType = encodingType; /* * Look for voice mail indication in TP_UDH TS23.040 9.2.3.24 Loading Loading
telephony/java/android/telephony/SmsMessage.java +11 −0 Original line number Diff line number Diff line Loading @@ -1019,6 +1019,17 @@ public class SmsMessage { return mWrappedSmsMessage.isReplyPathPresent(); } /** * Return the encoding type of a received SMS message, which is specified using ENCODING_* * GSM: defined in android.telephony.SmsConstants * CDMA: defined in android.telephony.cdma.UserData * * @hide */ public int getReceivedEncodingType() { return mWrappedSmsMessage.getReceivedEncodingType(); } /** * Determines whether or not to use CDMA format for MO SMS. * If SMS over IMS is supported, then format is based on IMS SMS format, Loading
telephony/java/com/android/internal/telephony/SmsMessageBase.java +15 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ package com.android.internal.telephony; import static com.android.internal.telephony.SmsConstants.ENCODING_UNKNOWN; import android.compat.annotation.UnsupportedAppUsage; import android.os.Build; import android.telephony.SmsMessage; Loading Loading @@ -93,6 +95,15 @@ public abstract class SmsMessageBase { @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553) protected boolean mMwiDontStore; /** * The encoding type of a received SMS message, which is specified using ENCODING_* * GSM: defined in android.telephony.SmsConstants * CDMA: defined in android.telephony.cdma.UserData * * @hide */ protected int mReceivedEncodingType = ENCODING_UNKNOWN; /** * Indicates status for messages stored on the ICC. */ Loading Loading @@ -512,4 +523,8 @@ public abstract class SmsMessageBase { return mRecipientAddress.getAddressString(); } public int getReceivedEncodingType() { return mReceivedEncodingType; } }
telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +4 −0 Original line number Diff line number Diff line Loading @@ -780,6 +780,7 @@ public class SmsMessage extends SmsMessageBase { mUserData = mBearerData.userData.payload; mUserDataHeader = mBearerData.userData.userDataHeader; mMessageBody = mBearerData.userData.payloadStr; mReceivedEncodingType = mBearerData.userData.msgEncoding; } if (mOriginatingAddress != null) { Loading Loading @@ -860,6 +861,9 @@ public class SmsMessage extends SmsMessageBase { Rlog.w(LOG_TAG, "BearerData.decode() returned null"); return null; } if (bData.userData != null) { mReceivedEncodingType = bData.userData.msgEncoding; } if (Rlog.isLoggable(LOGGABLE_TAG, Log.VERBOSE)) { Rlog.d(LOG_TAG, "MT raw BearerData = " + HexDump.toHexString(mEnvelope.bearerData)); Loading
telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +17 −16 Original line number Diff line number Diff line Loading @@ -1404,10 +1404,10 @@ public class SmsMessage extends SmsMessageBase { break; case 1: // 8 bit data //Support decoding the user data payload as pack GSM 8-bit (a GSM alphabet string //that's stored in 8-bit unpacked format) characters. if (r.getBoolean(com.android.internal. R.bool.config_sms_decode_gsm_8bit_data)) { // Support decoding the user data payload as pack GSM 8-bit (a GSM alphabet // string that's stored in 8-bit unpacked format) characters. if (r.getBoolean(com.android.internal .R.bool.config_sms_decode_gsm_8bit_data)) { encodingType = ENCODING_8BIT; break; } Loading Loading @@ -1492,6 +1492,7 @@ public class SmsMessage extends SmsMessageBase { encodingType == ENCODING_7BIT); this.mUserData = p.getUserData(); this.mUserDataHeader = p.getUserDataHeader(); this.mReceivedEncodingType = encodingType; /* * Look for voice mail indication in TP_UDH TS23.040 9.2.3.24 Loading