summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu Ping Hu <yph@google.com>2013-11-15 18:02:47 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2013-11-15 18:02:47 -0800
commitf38bf7bb986976975576a9db320e2e502e8d9dbf (patch)
treef4c0b9caaa4cfd84f4f69d0b9a5867ecf7161f68
parent77711070d9b4970886c727b568fbeffb4b26a301 (diff)
parentb0cecf7ee9b4018b9d52398e4346afeff1e2865d (diff)
downloadExchange-f38bf7bb986976975576a9db320e2e502e8d9dbf.tar.gz
am b0cecf7e: am db1ca5f7: Don\'t modify the ping on the main thread.
* commit 'b0cecf7ee9b4018b9d52398e4346afeff1e2865d': Don't modify the ping on the main thread.
-rw-r--r--src/com/android/exchange/service/EmailSyncAdapterService.java12
1 files changed, 5 insertions, 7 deletions
diff --git a/src/com/android/exchange/service/EmailSyncAdapterService.java b/src/com/android/exchange/service/EmailSyncAdapterService.java
index 82849824..43bb0cff 100644
--- a/src/com/android/exchange/service/EmailSyncAdapterService.java
+++ b/src/com/android/exchange/service/EmailSyncAdapterService.java
@@ -83,7 +83,7 @@ public class EmailSyncAdapterService extends AbstractSyncAdapterService {
private static final String TAG = Eas.LOG_TAG;
private static final String EXTRA_START_PING = "START_PING";
- private static final String EXTRA_ACCOUNT_ID = "ACCOUNT_ID";
+ private static final String EXTRA_PING_ACCOUNT = "PING_ACCOUNT";
private static final long SYNC_ERROR_BACKOFF_MILLIS = 5 * DateUtils.MINUTE_IN_MILLIS;
/**
@@ -259,7 +259,7 @@ public class EmailSyncAdapterService extends AbstractSyncAdapterService {
final Intent intent = new Intent(service, EmailSyncAdapterService.class);
intent.setAction(Eas.EXCHANGE_SERVICE_INTENT_ACTION);
intent.putExtra(EXTRA_START_PING, true);
- intent.putExtra(EXTRA_ACCOUNT_ID, account.mId);
+ intent.putExtra(EXTRA_PING_ACCOUNT, amAccount);
final PendingIntent pi = PendingIntent.getService(
EmailSyncAdapterService.this, 0, intent,
PendingIntent.FLAG_ONE_SHOT);
@@ -610,11 +610,9 @@ public class EmailSyncAdapterService extends AbstractSyncAdapterService {
LogUtils.d(TAG, "Restarting ping from alarm");
// We've been woken up by an alarm to restart our ping. This happens if a sync
// fails, rather that instantly starting the ping, we'll hold off for a few minutes.
- final long accountId = intent.getLongExtra(EXTRA_ACCOUNT_ID, -1);
- if (accountId != -1) {
- final Account account = Account.restoreAccountWithId(this, accountId);
- mSyncHandlerMap.modifyPing(false, account);
- }
+ final android.accounts.Account account =
+ intent.getParcelableExtra(EXTRA_PING_ACCOUNT);
+ EasPing.requestPing(account);
}
}
return super.onStartCommand(intent, flags, startId);