summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorKenny Root <kroot@google.com>2012-07-31 11:14:02 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-07-31 11:14:02 -0700
commitbba948dc9e95baab9e6fb728927aada4a00d93de (patch)
tree740b8ab9c8639e42e8c1f164158d985888b5ef2c /core
parent971c05a07b42018fa994d0f48d559838de7ed1a0 (diff)
parent26ff6626fc4ee0ae46f01ad309b366921da589fe (diff)
downloadframeworks_base-bba948dc9e95baab9e6fb728927aada4a00d93de.zip
frameworks_base-bba948dc9e95baab9e6fb728927aada4a00d93de.tar.gz
frameworks_base-bba948dc9e95baab9e6fb728927aada4a00d93de.tar.bz2
Merge "Delay AccountManagerService initialization" into jb-dev
Diffstat (limited to 'core')
-rw-r--r--core/java/android/accounts/AccountManagerService.java7
-rw-r--r--core/java/android/accounts/IAccountAuthenticatorCache.java5
-rw-r--r--core/java/android/content/ContentService.java5
-rw-r--r--core/java/android/content/pm/RegisteredServicesCache.java2
4 files changed, 15 insertions, 4 deletions
diff --git a/core/java/android/accounts/AccountManagerService.java b/core/java/android/accounts/AccountManagerService.java
index 079b9bd..22e454f 100644
--- a/core/java/android/accounts/AccountManagerService.java
+++ b/core/java/android/accounts/AccountManagerService.java
@@ -220,8 +220,6 @@ public class AccountManagerService
sThis.set(this);
- UserAccounts accounts = initUser(0);
-
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED);
intentFilter.addDataScheme("package");
@@ -242,6 +240,11 @@ public class AccountManagerService
}, userFilter);
}
+ public void systemReady() {
+ mAuthenticatorCache.generateServicesMap();
+ initUser(0);
+ }
+
private UserAccounts initUser(int userId) {
synchronized (mUsers) {
UserAccounts accounts = mUsers.get(userId);
diff --git a/core/java/android/accounts/IAccountAuthenticatorCache.java b/core/java/android/accounts/IAccountAuthenticatorCache.java
index 618771f..20dd585 100644
--- a/core/java/android/accounts/IAccountAuthenticatorCache.java
+++ b/core/java/android/accounts/IAccountAuthenticatorCache.java
@@ -60,4 +60,9 @@ public interface IAccountAuthenticatorCache {
*/
void setListener(RegisteredServicesCacheListener<AuthenticatorDescription> listener,
Handler handler);
+
+ /**
+ * Refreshes the authenticator cache.
+ */
+ void generateServicesMap();
} \ No newline at end of file
diff --git a/core/java/android/content/ContentService.java b/core/java/android/content/ContentService.java
index f827c3d..1a07504 100644
--- a/core/java/android/content/ContentService.java
+++ b/core/java/android/content/ContentService.java
@@ -132,6 +132,9 @@ public final class ContentService extends IContentService.Stub {
/*package*/ ContentService(Context context, boolean factoryTest) {
mContext = context;
mFactoryTest = factoryTest;
+ }
+
+ public void systemReady() {
getSyncManager();
}
@@ -524,7 +527,7 @@ public final class ContentService extends IContentService.Stub {
}
}
- public static IContentService main(Context context, boolean factoryTest) {
+ public static ContentService main(Context context, boolean factoryTest) {
ContentService service = new ContentService(context, factoryTest);
ServiceManager.addService(ContentResolver.CONTENT_SERVICE_NAME, service);
return service;
diff --git a/core/java/android/content/pm/RegisteredServicesCache.java b/core/java/android/content/pm/RegisteredServicesCache.java
index b1fc788..d8f9204 100644
--- a/core/java/android/content/pm/RegisteredServicesCache.java
+++ b/core/java/android/content/pm/RegisteredServicesCache.java
@@ -251,7 +251,7 @@ public abstract class RegisteredServicesCache<V> {
return false;
}
- void generateServicesMap() {
+ public void generateServicesMap() {
PackageManager pm = mContext.getPackageManager();
ArrayList<ServiceInfo<V>> serviceInfos = new ArrayList<ServiceInfo<V>>();
List<ResolveInfo> resolveInfos = pm.queryIntentServices(new Intent(mInterfaceName),