Sync account immediately upon restore

b/17443087

Change-Id: Ib38fa3551090db85c1f7391fcaa8ce6a8ed7c375
This commit is contained in:
Tony Mantler 2014-09-11 13:10:16 -07:00
parent f866891f92
commit a3652cbf8b

View File

@ -1631,14 +1631,18 @@ public class EmailProvider extends ContentProvider
// Try to restore them from saved JSON // Try to restore them from saved JSON
int restoredCount = 0; int restoredCount = 0;
for (final android.accounts.Account amAccount : amAccounts) { for (final android.accounts.Account amAccount : amAccounts) {
String jsonString = null; final String jsonString = am.getUserData(amAccount, ACCOUNT_MANAGER_JSON_TAG);
jsonString = am.getUserData(amAccount, ACCOUNT_MANAGER_JSON_TAG);
if (TextUtils.isEmpty(jsonString)) { if (TextUtils.isEmpty(jsonString)) {
continue; continue;
} }
final Account account = Account.fromJsonString(jsonString); final Account account = Account.fromJsonString(jsonString);
if (account != null) { if (account != null) {
AccountSettingsUtils.commitSettings(context, account); AccountSettingsUtils.commitSettings(context, account);
final Bundle extras = new Bundle(3);
extras.putBoolean(ContentResolver.SYNC_EXTRAS_MANUAL, true);
extras.putBoolean(ContentResolver.SYNC_EXTRAS_DO_NOT_RETRY, true);
extras.putBoolean(ContentResolver.SYNC_EXTRAS_EXPEDITED, true);
ContentResolver.requestSync(amAccount, EmailContent.AUTHORITY, extras);
restoredCount++; restoredCount++;
} }
} }