Loading src/java/com/android/internal/telephony/CarrierPrivilegesTracker.java +29 −2 Original line number Diff line number Diff line Loading @@ -106,6 +106,12 @@ public class CarrierPrivilegesTracker extends Handler { */ private static final int ACTION_PACKAGE_ADDED_OR_REPLACED = 5; /** * Action for tracking when a package is uninstalled on the device. * obj: String package name that was installed on the device. */ private static final int ACTION_PACKAGE_REMOVED = 6; private final Context mContext; private final Phone mPhone; private final CarrierConfigManager mCarrierConfigManager; Loading Loading @@ -161,7 +167,12 @@ public class CarrierPrivilegesTracker extends Handler { break; } case Intent.ACTION_PACKAGE_ADDED: // fall through case Intent.ACTION_PACKAGE_REPLACED: { case Intent.ACTION_PACKAGE_REPLACED: // fall through case Intent.ACTION_PACKAGE_REMOVED: { int what = (action.equals(Intent.ACTION_PACKAGE_REMOVED)) ? ACTION_PACKAGE_REMOVED : ACTION_PACKAGE_ADDED_OR_REPLACED; Uri uri = intent.getData(); String pkgName = (uri != null) ? uri.getSchemeSpecificPart() : null; if (TextUtils.isEmpty(pkgName)) { Loading @@ -169,7 +180,7 @@ public class CarrierPrivilegesTracker extends Handler { return; } sendMessage(obtainMessage(ACTION_PACKAGE_ADDED_OR_REPLACED, pkgName)); sendMessage(obtainMessage(what, pkgName)); break; } } Loading @@ -192,6 +203,7 @@ public class CarrierPrivilegesTracker extends Handler { filter.addAction(TelephonyManager.ACTION_SIM_APPLICATION_STATE_CHANGED); filter.addAction(Intent.ACTION_PACKAGE_ADDED); filter.addAction(Intent.ACTION_PACKAGE_REPLACED); filter.addAction(Intent.ACTION_PACKAGE_REMOVED); mContext.registerReceiver(mIntentReceiver, filter); mRegistrantList = new RegistrantList(); Loading Loading @@ -226,6 +238,11 @@ public class CarrierPrivilegesTracker extends Handler { handlePackageAddedOrReplaced(pkgName); break; } case ACTION_PACKAGE_REMOVED: { String pkgName = (String) msg.obj; handlePackageRemoved(pkgName); break; } default: { Log.e(TAG, "Received unknown msg type: " + msg.what); break; Loading Loading @@ -318,6 +335,16 @@ public class CarrierPrivilegesTracker extends Handler { maybeUpdatePrivilegedUidsAndNotifyRegistrants(); } private void handlePackageRemoved(String pkgName) { if (mInstalledPackageCerts.remove(pkgName) == null) { Log.e(TAG, "Unknown package was uninstalled: " + pkgName); return; } mCachedUids.remove(pkgName); maybeUpdatePrivilegedUidsAndNotifyRegistrants(); } private void maybeUpdateCertsAndNotifyRegistrants( Set<String> currentCerts, Set<String> updatedCerts) { if (!currentCerts.equals(updatedCerts)) { Loading Loading
src/java/com/android/internal/telephony/CarrierPrivilegesTracker.java +29 −2 Original line number Diff line number Diff line Loading @@ -106,6 +106,12 @@ public class CarrierPrivilegesTracker extends Handler { */ private static final int ACTION_PACKAGE_ADDED_OR_REPLACED = 5; /** * Action for tracking when a package is uninstalled on the device. * obj: String package name that was installed on the device. */ private static final int ACTION_PACKAGE_REMOVED = 6; private final Context mContext; private final Phone mPhone; private final CarrierConfigManager mCarrierConfigManager; Loading Loading @@ -161,7 +167,12 @@ public class CarrierPrivilegesTracker extends Handler { break; } case Intent.ACTION_PACKAGE_ADDED: // fall through case Intent.ACTION_PACKAGE_REPLACED: { case Intent.ACTION_PACKAGE_REPLACED: // fall through case Intent.ACTION_PACKAGE_REMOVED: { int what = (action.equals(Intent.ACTION_PACKAGE_REMOVED)) ? ACTION_PACKAGE_REMOVED : ACTION_PACKAGE_ADDED_OR_REPLACED; Uri uri = intent.getData(); String pkgName = (uri != null) ? uri.getSchemeSpecificPart() : null; if (TextUtils.isEmpty(pkgName)) { Loading @@ -169,7 +180,7 @@ public class CarrierPrivilegesTracker extends Handler { return; } sendMessage(obtainMessage(ACTION_PACKAGE_ADDED_OR_REPLACED, pkgName)); sendMessage(obtainMessage(what, pkgName)); break; } } Loading @@ -192,6 +203,7 @@ public class CarrierPrivilegesTracker extends Handler { filter.addAction(TelephonyManager.ACTION_SIM_APPLICATION_STATE_CHANGED); filter.addAction(Intent.ACTION_PACKAGE_ADDED); filter.addAction(Intent.ACTION_PACKAGE_REPLACED); filter.addAction(Intent.ACTION_PACKAGE_REMOVED); mContext.registerReceiver(mIntentReceiver, filter); mRegistrantList = new RegistrantList(); Loading Loading @@ -226,6 +238,11 @@ public class CarrierPrivilegesTracker extends Handler { handlePackageAddedOrReplaced(pkgName); break; } case ACTION_PACKAGE_REMOVED: { String pkgName = (String) msg.obj; handlePackageRemoved(pkgName); break; } default: { Log.e(TAG, "Received unknown msg type: " + msg.what); break; Loading Loading @@ -318,6 +335,16 @@ public class CarrierPrivilegesTracker extends Handler { maybeUpdatePrivilegedUidsAndNotifyRegistrants(); } private void handlePackageRemoved(String pkgName) { if (mInstalledPackageCerts.remove(pkgName) == null) { Log.e(TAG, "Unknown package was uninstalled: " + pkgName); return; } mCachedUids.remove(pkgName); maybeUpdatePrivilegedUidsAndNotifyRegistrants(); } private void maybeUpdateCertsAndNotifyRegistrants( Set<String> currentCerts, Set<String> updatedCerts) { if (!currentCerts.equals(updatedCerts)) { Loading