summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Taylor <tomtaylor@google.com>2013-01-31 22:21:03 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2013-01-31 22:21:03 +0000
commit5e508afc2cb9a889de49a52d1b6dfe1238fb4630 (patch)
tree1acd019a4a10458b89d054f0a7c535a8bc432b9e
parenta9c404e2f0415850e383269e478e7031582d176f (diff)
parent7a1b0328f6a6a6b0225f1392507cccff78f3cbd0 (diff)
downloadMms-jb-mr1-dev-plus-aosp.tar.gz
Merge "Wake up TransactService when MMS data is available"jb-mr1-dev-plus-aosp
-rw-r--r--src/com/android/mms/transaction/MmsSystemEventReceiver.java10
-rw-r--r--src/com/android/mms/transaction/TransactionService.java4
2 files changed, 11 insertions, 3 deletions
diff --git a/src/com/android/mms/transaction/MmsSystemEventReceiver.java b/src/com/android/mms/transaction/MmsSystemEventReceiver.java
index 78b027b5..2b70ba9f 100644
--- a/src/com/android/mms/transaction/MmsSystemEventReceiver.java
+++ b/src/com/android/mms/transaction/MmsSystemEventReceiver.java
@@ -64,13 +64,17 @@ public class MmsSystemEventReceiver extends BroadcastReceiver {
Uri changed = (Uri) intent.getParcelableExtra(Mms.Intents.DELETED_CONTENTS);
MmsApp.getApplication().getPduLoaderManager().removePdu(changed);
} else if (action.equals(TelephonyIntents.ACTION_ANY_DATA_CONNECTION_STATE_CHANGED)) {
- String state = intent.getStringExtra(PhoneConstants.STATE_KEY);
+ String apnType = intent.getStringExtra(PhoneConstants.DATA_APN_TYPE_KEY);
+ boolean available = !(intent.getBooleanExtra(
+ PhoneConstants.NETWORK_UNAVAILABLE_KEY, false));
if (Log.isLoggable(LogTag.TRANSACTION, Log.VERBOSE)) {
- Log.v(TAG, "ANY_DATA_STATE event received: " + state);
+ Log.v(TAG, "ANY_DATA_STATE event received: apnType = " + apnType +
+ ", available = " + available);
}
- if (state.equals("CONNECTED")) {
+ // Wake up transact service when MMS data is available.
+ if (apnType.equals(PhoneConstants.APN_TYPE_MMS) && available) {
wakeUpService(context);
}
} else if (action.equals(Intent.ACTION_BOOT_COMPLETED)) {
diff --git a/src/com/android/mms/transaction/TransactionService.java b/src/com/android/mms/transaction/TransactionService.java
index 7fd27153..4230b16f 100644
--- a/src/com/android/mms/transaction/TransactionService.java
+++ b/src/com/android/mms/transaction/TransactionService.java
@@ -236,6 +236,10 @@ public class TransactionService extends Service implements Observer {
}
MmsSystemEventReceiver.registerForConnectionStateChanges(
getApplicationContext());
+ } else {
+ // MMS data is available now, do not need listen to state change.
+ MmsSystemEventReceiver.unRegisterForConnectionStateChanges(
+ getApplicationContext());
}
while (cursor.moveToNext()) {