diff --git a/core/java/android/content/pm/RegisteredServicesCache.java b/core/java/android/content/pm/RegisteredServicesCache.java index 7696cbe0b6316..7ecb11248d235 100644 --- a/core/java/android/content/pm/RegisteredServicesCache.java +++ b/core/java/android/content/pm/RegisteredServicesCache.java @@ -42,7 +42,6 @@ import android.util.Xml; import com.android.internal.annotations.GuardedBy; import com.android.internal.annotations.VisibleForTesting; -import com.android.internal.os.BackgroundThread; import com.android.internal.util.ArrayUtils; import libcore.io.IoUtils; @@ -162,20 +161,18 @@ public abstract class RegisteredServicesCache { intentFilter.addAction(Intent.ACTION_PACKAGE_CHANGED); intentFilter.addAction(Intent.ACTION_PACKAGE_REMOVED); intentFilter.addDataScheme("package"); - Handler handler = BackgroundThread.getHandler(); - mContext.registerReceiverAsUser( - mPackageReceiver, UserHandle.ALL, intentFilter, null, handler); + mContext.registerReceiverAsUser(mPackageReceiver, UserHandle.ALL, intentFilter, null, null); // Register for events related to sdcard installation. IntentFilter sdFilter = new IntentFilter(); sdFilter.addAction(Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE); sdFilter.addAction(Intent.ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE); - mContext.registerReceiver(mExternalReceiver, sdFilter, null, handler); + mContext.registerReceiver(mExternalReceiver, sdFilter); // Register for user-related events IntentFilter userFilter = new IntentFilter(); sdFilter.addAction(Intent.ACTION_USER_REMOVED); - mContext.registerReceiver(mUserRemovedReceiver, userFilter, null, handler); + mContext.registerReceiver(mUserRemovedReceiver, userFilter); } private void handlePackageEvent(Intent intent, int userId) { @@ -268,7 +265,7 @@ public abstract class RegisteredServicesCache { public void setListener(RegisteredServicesCacheListener listener, Handler handler) { if (handler == null) { - handler = BackgroundThread.getHandler(); + handler = new Handler(mContext.getMainLooper()); } synchronized (this) { mHandler = handler; diff --git a/services/core/java/com/android/server/accounts/AccountManagerService.java b/services/core/java/com/android/server/accounts/AccountManagerService.java index c360190d58a34..5c2fd2647df27 100644 --- a/services/core/java/com/android/server/accounts/AccountManagerService.java +++ b/services/core/java/com/android/server/accounts/AccountManagerService.java @@ -279,7 +279,7 @@ public class AccountManagerService mAppOpsManager = mContext.getSystemService(AppOpsManager.class); mHandler = new MessageHandler(injector.getMessageHandlerLooper()); mAuthenticatorCache = mInjector.getAccountAuthenticatorCache(); - mAuthenticatorCache.setListener(this, mHandler); + mAuthenticatorCache.setListener(this, null /* Handler */); sThis.set(this);