Commit Graph

23 Commits

Author SHA1 Message Date
Jake Hamby
94bf9431e5 am e7578344: am 5872e9d7: Merge "Allow incoming SMS until internal storage is almost full." into gingerbread
Merge commit 'e75783440a55fb0a5ef75066be94a11898f652f0'

* commit 'e75783440a55fb0a5ef75066be94a11898f652f0':
  Allow incoming SMS until internal storage is almost full.
2010-09-08 14:38:15 -07:00
Jake Hamby
bb37163323 Allow incoming SMS until internal storage is almost full.
Fix for bug 2382830: new incoming SMS should not be rejected when
running low on internal phone storage.

Testing revealed that the /data partition should have at least 256 KiB
available in order to prevent random app crashes (including system apps)
due to SQLite transaction failures. With 256 KiB free, the device should
safely boot without storage full errors. This takes into account the
36-40 KiB that the YAFFS2 filesystem reports as available even after
the partition has been completely filled. I've set the default full
threshold to 1 MiB to provide a generous safety margin.

For this bug, I changed the DeviceStorageMonitorService demon to send
two new hidden notifications for device storage "full" and "not full",
when the free space falls below the full threshold (default 1 MiB,
but configurable as a system setting), in addition to the existing
storage low/okay notifications sent when the storage crosses the threshold
of 90% full (also configurable).

The SMS code was changed to use these new notifications so that it can
accept messages until the data partition has been filled to the maximum
safe capacity rather than stopping when it hits 90% full. There should
be no negative impact on battery life because the additional check in
the storage polling service should be offset by an optimization to cache
the free threshold values which were previously being computed every time
through the loop.

While testing this change, I discovered that SMSDispatcher was being
instantiated twice, the first time in GSMPhone/CDMAPhone, and the second
time in SimSmsInterfaceManager / RuimSmsInterfaceManager. Changed the code
to pass the original SMSDispatcher to the Sim/RuimSmsInterfaceManager
constructor.

Change-Id: Ie0c6d05294778ab6ee42e0fa01313af96d824c77
2010-09-08 12:37:18 -07:00
Jake Hamby
d218526bf6 am d457053a: am 07936528: Merge "Cosmetic cleanups to SMSDispatcher classes." into gingerbread
Merge commit 'd457053aab0763764da5b9c3e6e84e5b2935ea88'

* commit 'd457053aab0763764da5b9c3e6e84e5b2935ea88':
  Cosmetic cleanups to SMSDispatcher classes.
2010-08-23 12:01:35 -07:00
Jake Hamby
059fe88115 Cosmetic cleanups to SMSDispatcher classes.
Cleaned up some typos and other small fixes in SMSDispatcher in
preparation for checking in my SMS bug fixes. This change doesn't
fix any bugs, but it shouldn't introduce any either.

- Removed unused import statements
- Removed unused private constants and fields
- Fixed typos in Java comments and private constants
- Added generic type parameter to mSTrackers ArrayList
- Removed unnecessary casts
- Fixed indentation of mResultReceiver in SMSDispatcher
- Removed call to get unused smsc in CDMA sendSMS()
- Changed "|=" to "=" in boolean assignment where the variable
  was initialized to false (thus the two operators are equivalent)

Change-Id: Ic19a63a7ef5cdccc7be86043c2a1b863ec8af652
2010-08-19 17:40:37 -07:00
The Android Open Source Project
24d9c149c8 am fc97669a: am 72a6af1a: am 7d952644: merge from open-source master 2010-05-12 14:16:50 -07:00
The Android Open Source Project
7d9526445c merge from open-source master
Change-Id: Ib5ea9745c2b652d64646e3e28c12e63815321ff9
2010-05-12 14:10:23 -07:00
Naveen Kalla
18573e9281 Support to display message when operation is blocked due to FDN being enabled
The terminal disallows USSD, SMS, Voice Call and Supplementary services
operations for numbers not in the Fixed Dialing Number (FDN) list when the
FDN service is enabled. FDN_CHECK_FAILURE error is sent from the RIL and the
message needs to be displayed to indicate the failure.

Change-Id: I49bd63f69a3f0201125b17cd16db2e8fcf93ddc3
2010-05-11 09:12:00 -07:00
Jake Hamby
145ff609de Spelling corrections and other minor cosmetic cleanups.
- Fixed a bunch of typos in comments (plus a few variable names)
- Removed unused import lines from telephony classes
- Added @Override attribute to overriding methods
- Made SmsMessage.PduParser inner class private & deleted unused constructor
- Added type specifiers to declarations of ArrayList and HashMap
- SimulatedCommands.getRegistrationState() had an ArrayIndexOutOfBoundsException
  trying to write to index 14 of a 14-element array. I removed the
  out-of-bounds assignment.

Change-Id: I054b5156aa64ab6639028d5b45a7e688b2deee08
2010-04-15 15:23:12 -07:00
The Android Open Source Project
02034d3568 merge from open-source master
Change-Id: Ie60db5faf407344b8fbe3d5c1e7c01e927ff251e
2010-03-22 15:55:38 -07:00
Naveen Kalla
1a61b586b5 Retry pending memory status update to modem when radio is ON.
When radio is powered off / airplane mode, memory status updates are
ignored by RIL. With this fix, pending memory status updates are sent
again when radio is powered back on.
2010-03-03 18:54:36 -08:00
Doug Zongker
edc5189c33 change remaining frameworks/base Gservices to Secure settings
Change-Id: I61bdb05a2526523700c2833154d5a4133881ef10
2010-01-07 15:00:37 -08:00
jsh
4219797afc Log exception if we hit an error parsing an incoming SMS message.
This will help debug b/2197566.  We should have been logging the error
anyway.
2009-10-19 16:11:37 -07:00
jsh
a01726a7fd Some fixes to SMS processing in the framework.
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
2009-09-01 13:35:20 -07:00
Tammo Spalink
1f952a178d 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
2009-09-01 13:37:03 +08:00
Yong Liu
51b2b33219 MO SMS fail after sending 100 messages
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.
2009-08-28 11:58:38 -07:00
jsh
d1cb1d22af Bubble up SMS send fail error code to the app.
Framework portion of the fix for http://b/1978375:
We'll pass up the error code returned by the RIL on send failure.
2009-08-06 13:23:04 -07:00
David Krause
5c7d9e8194 CDMA incoming MMS fixes
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.
2009-06-25 21:56:24 -07:00
jsh
3960ced463 Fix SMS Ack.
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[]).
2009-06-25 13:08:08 -07:00
Wink Saville
2563a3ac05 Cleanup whitespace. 2009-06-09 10:30:03 -07:00
jsh
52f2825c29 Report device storage status (for SMS) to RIL.
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).
2009-06-08 16:05:00 -07:00
jsh
867641ece3 Telephony support for SMS memory reporting to the network.
- 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).
2009-05-29 14:22:36 -07:00
Tammo Spalink
64c499113a 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
2009-05-20 09:27:10 +08:00
Wink Saville
767a662ecd AI 144185: Integrate cdma into the main code base.
Automated import of CL 144185
2009-04-02 01:37:02 -07:00