PorcessPendingMessagesAction queues one message for sending/downloading
associated with a subscription triggering current action at a time. And
the ConnectivityUtil also works based on subscriptions so that pending
messages can be processed regardless of other phones' state in multi-sim
case.
It includes cleanup code as well.
Test: Manual
Change-Id: Id6b4f4a0aa6a3291e7a4d8a5d3f0fbb9db3c5b86
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
The message dispatcher will only queue one message at a time for
both sending and downloading. On multi-sim scenarios this causes
failures in a subscription to delay all messages added after the
one that fails.
This patch changes the pending messages processor to queue one
message per subscription for both sending and received, instead of
one globally.
Test: m
Change-Id: Ia54906089dccbbe694aab7bf995ac08480d3e4f8
Ticket: CRACKLING-877
The X-Mms-Transaction-ID of the M-Notification.ind identifies each
M-Notification.ind message. New duplication detection logic compares
the new X-Mms-Transaction-ID with the stored value to identify the
Network duplicate M-Notification.ind message when it receives a new
M-Notification.ind message.
Following SQL WHERE clause is used to query from the DB.
((m_type=NOTIFICATION_IND) OR (m_type=RETRIEVE_CONF)) AND (exp>NOW))
AND (t_id=xxxxxx)
For this, when the M-Retrieve.conf is received, updates the t_id and the
exp from the corresponding M-Notification.ind so that new logic would
work even after the M-Notification.ind is deleted.
Test: Manual
Change-Id: I86e1eee62ea612d96ca16e5384b044cb6541ff6a
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Simple matching up CDMA status with GSM TP-Status for common handling.
And fix bugleStatusForSMS() for all the permanent error cases.
Note: Need to check SC operation for ERROR_TEMPORARY.
Test: Manual
Change-Id: Ic8136d273dc0c25a4f0690f951d4d8aca20579ff
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
Use JobIntentService to start the Backgroundworkerservice and
ActionServiceImpl services.
+ Deleted WakeLock code.
+ Made changes to com.android.messaging.test tests so that all tests
pass with the new JobService. I am not sure if these tests passed
before these changes.
+ CTS tests passed without any changes.
+ Added TEST_MAPPING file for presubmit tests.
Bug: 115499280
Bug: 119503204
Test: manual - Tested the messaging UI. Ran the following CTS tests on Pixel phone.
$ make -j 40
rw-r--r-- 1 rtenneti primarygroup 8624061 Feb 19 12:37 out/target/product/marlin/system/app/messaging/messaging.apk
$ make messagingtests -j
-rw-r--r-- 1 rtenneti primarygroup 729713 Feb 19 12:52 out/target/product/marlin/testcases/messagingtests/messagingtests.apk
$ adb install -r -d out/target/product/marlin/system/app/messaging/messaging.apk
$ adb install -r -d out/target/product/marlin/testcases/messagingtests/messagingtests.apk
$ adb shell am instrument -w com.android.messaging.test
Test results for InstrumentationTestRunner=...........
Time: 13.353
OK (113 tests)
CTS tests for Mesaging app
---------------------------
$ ./development/testrunner/runtest.py --path cts/tests/app/src/android/app/cts/NotificationTest.java
android.app.cts.NotificationTest:...........................
Time: 0.299
OK (27 tests)
atest
-----
$ cd .../packages/apps/Messaging
$ atest
Running Tests...
messagingtests (113 Tests)
-------------------------
...
[113/113] com.android.messaging.util.YouTubeUtilTest#testGetYoutubePreviewImageLink: PASSED (2ms)
Results from tests that require device:
Summary
-------
messagingtests: Passed: 113, Failed: 0, Ignored: 0
All tests passed!
Change-Id: I9494f0750954e6364abb695aa867494669ae54c4