diff options
author | Fred Quintana <fredq@google.com> | 2010-01-27 18:40:11 -0800 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-01-27 18:40:11 -0800 |
commit | a322dfa47eab8d49eeb71b5245de7147c0207137 (patch) | |
tree | 9273bb8a739a28f3f3b5fe95442282174a5011e0 /core/java/android/content/SyncManager.java | |
parent | ec22b4c468e5a47c64782a8d9f81f46cd3dbb2e1 (diff) | |
parent | 6f3e1e27a697d3e64bf73792c1007135319ff0d5 (diff) | |
download | frameworks_base-a322dfa47eab8d49eeb71b5245de7147c0207137.zip frameworks_base-a322dfa47eab8d49eeb71b5245de7147c0207137.tar.gz frameworks_base-a322dfa47eab8d49eeb71b5245de7147c0207137.tar.bz2 |
am 6f3e1e27: am 9a400fa4: Merge "initialize sync adapters that get installed while the system is running bug http://b/issue?id=2360782" into eclair
Merge commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5'
* commit '6f3e1e27a697d3e64bf73792c1007135319ff0d5':
initialize sync adapters that get installed while the system is running
Diffstat (limited to 'core/java/android/content/SyncManager.java')
-rw-r--r-- | core/java/android/content/SyncManager.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/core/java/android/content/SyncManager.java b/core/java/android/content/SyncManager.java index c9077bc..699b61d 100644 --- a/core/java/android/content/SyncManager.java +++ b/core/java/android/content/SyncManager.java @@ -31,6 +31,7 @@ import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; import android.content.pm.RegisteredServicesCache; import android.content.pm.ProviderInfo; +import android.content.pm.RegisteredServicesCacheListener; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; @@ -325,6 +326,14 @@ public class SyncManager implements OnAccountsUpdateListener { mSyncHandler = new SyncHandler(syncThread.getLooper()); mSyncAdapters = new SyncAdaptersCache(mContext); + mSyncAdapters.setListener(new RegisteredServicesCacheListener<SyncAdapterType>() { + public void onServiceChanged(SyncAdapterType type, boolean removed) { + if (!removed) { + scheduleSync(null, type.authority, null, 0 /* no delay */, + false /* onlyThoseWithUnkownSyncableState */); + } + } + }, mSyncHandler); mSyncAlarmIntent = PendingIntent.getBroadcast( mContext, 0 /* ignored */, new Intent(ACTION_SYNC_ALARM), 0); |