Loading core/java/android/provider/Telephony.java +7 −0 Original line number Diff line number Diff line Loading @@ -4802,6 +4802,13 @@ public final class Telephony { public static final String COLUMN_PHONE_NUMBER_SOURCE_IMS = "phone_number_source_ims"; /** * TelephonyProvider column name for last used TP - message Reference * * @hide */ public static final String COLUMN_TP_MESSAGE_REF = "tp_message_ref"; /** * TelephonyProvider column name for the device's preferred usage setting. * Loading telephony/java/android/telephony/SubscriptionManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -477,6 +477,14 @@ public class SubscriptionManager { /** @hide */ public static final String SUBSCRIPTION_TYPE = SimInfo.COLUMN_SUBSCRIPTION_TYPE; /** * TelephonyProvider column name for last used TP - message Reference * <P>Type: INTEGER (int)</P> with -1 as default value * TP - Message Reference valid range [0 - 255] * @hide */ public static final String TP_MESSAGE_REF = SimInfo.COLUMN_TP_MESSAGE_REF; /** * TelephonyProvider column name data_enabled_override_rules. * It's a list of rules for overriding data enabled settings. The syntax is Loading telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +73 −7 Original line number Diff line number Diff line Loading @@ -249,7 +249,6 @@ public class SmsMessage extends SmsMessageBase { ENCODING_UNKNOWN, 0, 0); } /** * Gets an SMS-SUBMIT PDU for a destination address and a message using the specified encoding. * Loading @@ -272,7 +271,7 @@ public class SmsMessage extends SmsMessageBase { boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, header, encoding, languageTable, languageShiftTable, -1); header, encoding, languageTable, languageShiftTable, -1, 0); } /** Loading @@ -297,6 +296,32 @@ public class SmsMessage extends SmsMessageBase { String destinationAddress, String message, boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable, int validityPeriod) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, header, encoding, languageTable, languageShiftTable, validityPeriod, 0); } /** * Gets an SMS-SUBMIT PDU for a destination address and a message using the specified encoding. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param message string representation of the message payload. * @param statusReportRequested indicates whether a report is reuested for this message. * @param header a byte array containing the data for the User Data Header. * @param encoding encoding defined by constants in * com.android.internal.telephony.SmsConstants.ENCODING_* * @param languageTable * @param languageShiftTable * @param validityPeriod Validity Period of the message in Minutes. * @param messageRef TP Message Reference number * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. * @hide */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, String message, boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable, int validityPeriod, int messageRef) { // Perform null parameter checks. if (message == null || destinationAddress == null) { Loading Loading @@ -350,7 +375,7 @@ public class SmsMessage extends SmsMessageBase { ByteArrayOutputStream bo = getSubmitPduHead( scAddress, destinationAddress, mtiByte, statusReportRequested, ret); statusReportRequested, ret, messageRef); // Skip encoding pdu if error occurs when create pdu head and the error will be handled // properly later on encodedMessage correctness check. Loading Loading @@ -496,7 +521,7 @@ public class SmsMessage extends SmsMessageBase { String destinationAddress, String message, boolean statusReportRequested, int validityPeriod) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, null, ENCODING_UNKNOWN, 0, 0, validityPeriod); null, ENCODING_UNKNOWN, 0, 0, validityPeriod, 0); } /** Loading @@ -507,12 +532,13 @@ public class SmsMessage extends SmsMessageBase { * @param destinationPort the port to deliver the message to at the destination. * @param data the data for the message. * @param statusReportRequested indicates whether a report is reuested for this message. * @param messageRef TP Message Reference number * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, int destinationPort, byte[] data, boolean statusReportRequested) { boolean statusReportRequested, int messageRef) { SmsHeader.PortAddrs portAddrs = new SmsHeader.PortAddrs(); portAddrs.destPort = destinationPort; Loading @@ -533,7 +559,7 @@ public class SmsMessage extends SmsMessageBase { SubmitPdu ret = new SubmitPdu(); ByteArrayOutputStream bo = getSubmitPduHead( scAddress, destinationAddress, (byte) 0x41, /* TP-MTI=SMS-SUBMIT, TP-UDHI=true */ statusReportRequested, ret); statusReportRequested, ret, messageRef); // Skip encoding pdu if error occurs when create pdu head and the error will be handled // properly later on encodedMessage correctness check. if (bo == null) return ret; Loading @@ -558,6 +584,24 @@ public class SmsMessage extends SmsMessageBase { return ret; } /** * Gets an SMS-SUBMIT PDU for a data message to a destination address & port. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param destinationPort the port to deliver the message to at the destination. * @param data the data for the message. * @param statusReportRequested indicates whether a report is reuested for this message. * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, int destinationPort, byte[] data, boolean statusReportRequested) { return getSubmitPdu(scAddress, destinationAddress, destinationPort, data, statusReportRequested, 0); } /** * Creates the beginning of a SUBMIT PDU. * Loading @@ -576,6 +620,28 @@ public class SmsMessage extends SmsMessageBase { private static ByteArrayOutputStream getSubmitPduHead( String scAddress, String destinationAddress, byte mtiByte, boolean statusReportRequested, SubmitPdu ret) { return getSubmitPduHead(scAddress, destinationAddress, mtiByte, statusReportRequested, ret, 0); } /** * Creates the beginning of a SUBMIT PDU. * * This is the part of the SUBMIT PDU that is common to the two versions of * {@link #getSubmitPdu}, one of which takes a byte array and the other of which takes a * <code>String</code>. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param mtiByte * @param statusReportRequested indicates whether a report is reuested for this message. * @param ret <code>SubmitPdu</code>. * @param messageRef TP Message Reference number * @return a byte array of the beginning of a SUBMIT PDU. Null for invalid destinationAddress. */ private static ByteArrayOutputStream getSubmitPduHead( String scAddress, String destinationAddress, byte mtiByte, boolean statusReportRequested, SubmitPdu ret, int messageRef) { ByteArrayOutputStream bo = new ByteArrayOutputStream( MAX_USER_DATA_BYTES + 40); Loading @@ -596,7 +662,7 @@ public class SmsMessage extends SmsMessageBase { bo.write(mtiByte); // space for TP-Message-Reference bo.write(0); bo.write(messageRef); byte[] daBytes; Loading Loading
core/java/android/provider/Telephony.java +7 −0 Original line number Diff line number Diff line Loading @@ -4802,6 +4802,13 @@ public final class Telephony { public static final String COLUMN_PHONE_NUMBER_SOURCE_IMS = "phone_number_source_ims"; /** * TelephonyProvider column name for last used TP - message Reference * * @hide */ public static final String COLUMN_TP_MESSAGE_REF = "tp_message_ref"; /** * TelephonyProvider column name for the device's preferred usage setting. * Loading
telephony/java/android/telephony/SubscriptionManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -477,6 +477,14 @@ public class SubscriptionManager { /** @hide */ public static final String SUBSCRIPTION_TYPE = SimInfo.COLUMN_SUBSCRIPTION_TYPE; /** * TelephonyProvider column name for last used TP - message Reference * <P>Type: INTEGER (int)</P> with -1 as default value * TP - Message Reference valid range [0 - 255] * @hide */ public static final String TP_MESSAGE_REF = SimInfo.COLUMN_TP_MESSAGE_REF; /** * TelephonyProvider column name data_enabled_override_rules. * It's a list of rules for overriding data enabled settings. The syntax is Loading
telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +73 −7 Original line number Diff line number Diff line Loading @@ -249,7 +249,6 @@ public class SmsMessage extends SmsMessageBase { ENCODING_UNKNOWN, 0, 0); } /** * Gets an SMS-SUBMIT PDU for a destination address and a message using the specified encoding. * Loading @@ -272,7 +271,7 @@ public class SmsMessage extends SmsMessageBase { boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, header, encoding, languageTable, languageShiftTable, -1); header, encoding, languageTable, languageShiftTable, -1, 0); } /** Loading @@ -297,6 +296,32 @@ public class SmsMessage extends SmsMessageBase { String destinationAddress, String message, boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable, int validityPeriod) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, header, encoding, languageTable, languageShiftTable, validityPeriod, 0); } /** * Gets an SMS-SUBMIT PDU for a destination address and a message using the specified encoding. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param message string representation of the message payload. * @param statusReportRequested indicates whether a report is reuested for this message. * @param header a byte array containing the data for the User Data Header. * @param encoding encoding defined by constants in * com.android.internal.telephony.SmsConstants.ENCODING_* * @param languageTable * @param languageShiftTable * @param validityPeriod Validity Period of the message in Minutes. * @param messageRef TP Message Reference number * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. * @hide */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, String message, boolean statusReportRequested, byte[] header, int encoding, int languageTable, int languageShiftTable, int validityPeriod, int messageRef) { // Perform null parameter checks. if (message == null || destinationAddress == null) { Loading Loading @@ -350,7 +375,7 @@ public class SmsMessage extends SmsMessageBase { ByteArrayOutputStream bo = getSubmitPduHead( scAddress, destinationAddress, mtiByte, statusReportRequested, ret); statusReportRequested, ret, messageRef); // Skip encoding pdu if error occurs when create pdu head and the error will be handled // properly later on encodedMessage correctness check. Loading Loading @@ -496,7 +521,7 @@ public class SmsMessage extends SmsMessageBase { String destinationAddress, String message, boolean statusReportRequested, int validityPeriod) { return getSubmitPdu(scAddress, destinationAddress, message, statusReportRequested, null, ENCODING_UNKNOWN, 0, 0, validityPeriod); null, ENCODING_UNKNOWN, 0, 0, validityPeriod, 0); } /** Loading @@ -507,12 +532,13 @@ public class SmsMessage extends SmsMessageBase { * @param destinationPort the port to deliver the message to at the destination. * @param data the data for the message. * @param statusReportRequested indicates whether a report is reuested for this message. * @param messageRef TP Message Reference number * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, int destinationPort, byte[] data, boolean statusReportRequested) { boolean statusReportRequested, int messageRef) { SmsHeader.PortAddrs portAddrs = new SmsHeader.PortAddrs(); portAddrs.destPort = destinationPort; Loading @@ -533,7 +559,7 @@ public class SmsMessage extends SmsMessageBase { SubmitPdu ret = new SubmitPdu(); ByteArrayOutputStream bo = getSubmitPduHead( scAddress, destinationAddress, (byte) 0x41, /* TP-MTI=SMS-SUBMIT, TP-UDHI=true */ statusReportRequested, ret); statusReportRequested, ret, messageRef); // Skip encoding pdu if error occurs when create pdu head and the error will be handled // properly later on encodedMessage correctness check. if (bo == null) return ret; Loading @@ -558,6 +584,24 @@ public class SmsMessage extends SmsMessageBase { return ret; } /** * Gets an SMS-SUBMIT PDU for a data message to a destination address & port. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param destinationPort the port to deliver the message to at the destination. * @param data the data for the message. * @param statusReportRequested indicates whether a report is reuested for this message. * @return a <code>SubmitPdu</code> containing the encoded SC address if applicable and the * encoded message. Returns null on encode error. */ public static SubmitPdu getSubmitPdu(String scAddress, String destinationAddress, int destinationPort, byte[] data, boolean statusReportRequested) { return getSubmitPdu(scAddress, destinationAddress, destinationPort, data, statusReportRequested, 0); } /** * Creates the beginning of a SUBMIT PDU. * Loading @@ -576,6 +620,28 @@ public class SmsMessage extends SmsMessageBase { private static ByteArrayOutputStream getSubmitPduHead( String scAddress, String destinationAddress, byte mtiByte, boolean statusReportRequested, SubmitPdu ret) { return getSubmitPduHead(scAddress, destinationAddress, mtiByte, statusReportRequested, ret, 0); } /** * Creates the beginning of a SUBMIT PDU. * * This is the part of the SUBMIT PDU that is common to the two versions of * {@link #getSubmitPdu}, one of which takes a byte array and the other of which takes a * <code>String</code>. * * @param scAddress Service Centre address. Null means use default. * @param destinationAddress the address of the destination for the message. * @param mtiByte * @param statusReportRequested indicates whether a report is reuested for this message. * @param ret <code>SubmitPdu</code>. * @param messageRef TP Message Reference number * @return a byte array of the beginning of a SUBMIT PDU. Null for invalid destinationAddress. */ private static ByteArrayOutputStream getSubmitPduHead( String scAddress, String destinationAddress, byte mtiByte, boolean statusReportRequested, SubmitPdu ret, int messageRef) { ByteArrayOutputStream bo = new ByteArrayOutputStream( MAX_USER_DATA_BYTES + 40); Loading @@ -596,7 +662,7 @@ public class SmsMessage extends SmsMessageBase { bo.write(mtiByte); // space for TP-Message-Reference bo.write(0); bo.write(messageRef); byte[] daBytes; Loading