Merge "New System Api: getCarrierId using carrierIdentifier" into main
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 47c00af..bb39302 100644
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -14867,4 +14867,25 @@
Binder.restoreCallingIdentity(identity);
}
}
+
+ /**
+ * Returns carrier id maps to the passing {@link CarrierIdentifier}.
+ *
+ * @param carrierIdentifier {@link CarrierIdentifier}.
+ *
+ * @return carrier id from passing {@link CarrierIdentifier} or UNKNOWN_CARRIER_ID
+ * if the carrier cannot be identified
+ */
+ public int getCarrierIdFromIdentifier(@NonNull CarrierIdentifier carrierIdentifier) {
+ enforceReadPrivilegedPermission("getCarrierIdFromIdentifier");
+ enforceTelephonyFeatureWithException(getCurrentPackageName(),
+ PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION, "getCarrierIdFromIdentifier");
+
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ return CarrierResolver.getCarrierIdFromIdentifier(mApp, carrierIdentifier);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
+ }
}