Always process class 0 and other unstored SMS (eg, MWI). We were
rejecting all SMS messages in storage full situations, but certain
messages do not require storage.
Also, notify apps when the framework rejects MT SMS, with new
SMS_REJECTED_ACTION intent.
b/2066775
b/2015906
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
After sending 100 messages, SMSDispatcher always displays dialog to user to
confirm the sending. If the user sends messages too fast then there will be more
than one dialogs waiting for the response, but SMSDisptcher can only handle one.
Need to correctly interpret WAP Datagram data. Specifically the
source and destination ports are only included in the 1st segment,
not subsequent segments but the original implementation was looking
for the ports for all segments.
There were a few places where we were not sending SMS ack. This change fixes that, and helps ensure that we don't miss any others.
Also fix a bug I introduced in RIL.java for CDMA SMS ACK (it uses RIL_CDMA_SMS_Ack and not int[]).
Indicate SMS memory available/not available based on DEVICE_STORAGE_OK/FULL
intents, and immediately NAK with MEMORY_FULL if we've received a
DEVICE_STORAGE_FULL notification.
This may end up being a short term solution, as the messaging app is
getting re-worked in Eclair, which may change the way we want to handle
memory full reporting (ie, more app involvement).
- Use ordered broadcast to allow receivers to set a result code.
- Ack SMS with result code.
- New RIL command to report memory status.
- Fixed a typo in a Gservices setting.
- Merge in CL 137895 (hold a wake lock while broadcasting SMS_RECEIVED).
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