History log of /frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b49a73dfc4c9817bba1f227e9330555acdf9b56f 16-Mar-2011 Jake Hamby <jhamby@google.com> Enable support for SMS national language shift tables.

Add support for encoding and decoding SMS 7 bit user data using the
national language shift tables defined in 3GPP TS 23.038 (GSM/UMTS only),
including the new tables added in Release 9 for Indic languages.

Decoding is always supported, but encoding is only enabled for the
specific language tables added to the new integer array resources
"config_sms_enabled_single_shift_tables" and
"config_sms_enabled_locking_shift_tables" defined in
frameworks/base/core/res/res/values/config.xml. The default empty arrays
should be overridden in an OEM overlay for the specific nationalities where
SMS national language shift table encoding is allowed/mandated (e.g. Turkey).
GsmAlphabet.countGsmSeptets() will try to find the most efficient encoding
among all combinations of enabled locking shift and single shift tables.
If no 7 bit encoding is possible, 16 bit UCS-2 encoding will be used.

This change also fixes a bug in the decoder: when an escape septet
is followed by a septet with no entry in the extension (single shift)
table, TS 23.038 Table 6.2.1.1 states that the MS shall display
the character in the main GSM 7 bit default alphabet table, or the
active national language locking shift table. Previously, we were
decoding this sequence as a space character. Two consecutive escape
septets will continue to decode as a space character, according to
Note 1 of table 6.2.1.1.

Change-Id: I4dab3f0ffe39f3df2064ed93c9c05f26e274d18b
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
17f616823a562ceb3a008f91e05d43bc56d37cae 13-Aug-2010 Jake Hamby <jhamby@google.com> Fix character count bug and Javadoc typos in SMS (with test cases)

Fix a character count bug I discovered while working on related SMS
bugs. Includes a new set of test cases to verify the fix for the
buggy calculateLength() methods ("runtest frameworks-telephony").

You can also verify that the counter works properly in the Mms app
by typing characters until the boundary is crossed where an
additional message part is required. The counter should count down
to 0 characters remaining before increasing the message count.

Change-Id: I4de68b82dfc53dcae094865798f2c0235a355d43
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
c16889dc0034daaf50b2307c4de6c16c4964f30c 24-Mar-2010 Naveen Kalla <nkalla@codeaurora.org> Type Zero Sms should not be displayed/stored/notified.

Type Zero messages indicated by TP_PID field set to value 0x40,
should not be displayed/stored/notified. They should only be
acknowledged.
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
0e200c3cbed83283c79703b552fe8e3d49040f10 25-Nov-2009 Bai Tao <michaelbai@google.com> Sending UCS2 encoded SMS correctly

http://b/2285139
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
1fa7fae1399f735ea15242484fb5def187e07fde 24-Oct-2009 Gilles Duboscq <gilwooden@gmail.com> Make multipart message follow 3GPP TS 23.040 V9.0.0 (2009-06), section 9.2.3.24.1 :
all the parts should have the same encoding.

Fixes b/2040561
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
1f952a178db86559ff4bab79c4a9b5fae18096bf 25-Aug-2009 Tammo Spalink <tammo@google.com> Move SMS pdu creation fully into the central Phone process.

Previously pdu creation was haphazardly done sometimes by the app and
sometimes centrally by the phone process -- specifically the phone
process did creation for multipart texts. This change gets rid of the
previous IPC interface for sending raw pdus to SMSDispatch in the
phone process, and instead makes everything work like multipart
messages worked before, namely the structured data is passed and pdu
encoding done centrally.

The motivation for this was the need to ensure that CDMA message id
numbers were strictly monotonic, including across reboots, which
necessitated central state in the form of a system property, which
could in turn only be modified by the phone process.

Hence, this (in part) addresses issue: http://buganizer/issue?id=2075760

Change-Id: I94ca207b6e657c465e8472534704db8646ee277c
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
9688c6046fdbf6a24e3541bd6342995b4605fd5d 12-Aug-2009 Wink Saville <wink@google.com> Rename bcdByteToInt to gsmBcdByteToInt and beBcdByteToInt to cdmaBcdByteToInt.
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
7f304d2cce936ac273aaa4d1ee998292ba5755f4 12-Aug-2009 jsh <jsh@google.com> Fix for sending 16-bit SMS message with header.

Header length was missing from the PDU. This addresses http://b/issue?id=2040561
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
fc78f358cb1d1cee99758bcd6ef998a122ef27c9 11-Jun-2009 Tammo Spalink <tammo@google.com> for cdma concatenated (long) messages, replace ascii7bit with gsm7bit encoding
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
a94945d3a1cf23caf33759eb1de84195d3fcb37b 03-Jun-2009 Tammo Spalink <tammo@google.com> make sms calculateLength radio-independent
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
641bb3d8dfd72f57356d39ef00256d6077c9e235 27-May-2009 Tammo Spalink <tammo@google.com> expose (but still hide) sms user data headers

addresses bug http://b/issue?id=1751571
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
faf4413dffdc9079683b951736088ff2a01073a4 30-May-2009 jsh <jsh@google.com> Manually merge a few fixes from cupcake and cupcake_dcm.

CL 144717: Correctly set user data payload length for non-7-bit encoded payload.
CL 149058: Check for null TP-OA in SmsMessage.parseMessageBody().
CL 138094: Make sure call state (and other updates) have a chance to get processed between data setup attempts.
CL 132624: Added a comment for a way to save a message to the SIM.
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
64c499113a758cf80cddfd4d0183f944a1a6645a 05-May-2009 Tammo Spalink <tammo@google.com> SmsHeader rewrite, in preparation for migration to public API.

See http://b/issue?id=1751571

Changes the semantics of SmsHeader from containing only opaque data
to exposing occurs-once frequently-used fields together with a list
of opaque fields. Also changes the coding to and from byte array to
be symmetrical, whereas previous encoding had an extra length field.

Cdma SmsMessage -- cleanup of code paths along with adjustments to
match the new header semantics, which should address at least some
of the issues with concatenated messages. See http://b/issue?id=1809759
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java
767a662ecde33c3979bf02b793d392aca0403162 02-Apr-2009 Wink Saville <> AI 144185: Integrate cdma into the main code base.

Automated import of CL 144185
/frameworks/base/telephony/java/com/android/internal/telephony/gsm/SmsMessage.java