Used checkPackage to check UID and package

This is our best guess at a fix, but there's unfortunately no way to
verify it currently.

Bug: 150979331
Bug: 146570216
Test: builds
Change-Id: I567639aa789c6c4db8e230d5db4938f92901f44e
Merged-In: I567639aa789c6c4db8e230d5db4938f92901f44e
(cherry picked from commit 4cda45544a1e5d097100afbbb549ec2e6c610763)
(cherry picked from commit 262519f4cf0bd28dfc102775815cceb9f7788e20)
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index ca56ab1..b0f8c5f 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -6328,15 +6328,10 @@
 
     @Override
     public List<UiccCardInfo> getUiccCardsInfo(String callingPackage) {
-        try {
-            PackageManager pm = mApp.getPackageManager();
-            if (Binder.getCallingUid() != pm.getPackageUid(callingPackage, 0)) {
-                throw new SecurityException("Calling package " + callingPackage + " does not match "
-                        + "calling UID");
-            }
-        } catch (PackageManager.NameNotFoundException e) {
-            throw new SecurityException("Invalid calling package. e=" + e);
-        }
+        // Verify that tha callingPackage belongs to the calling UID
+        mApp.getSystemService(AppOpsManager.class)
+                .checkPackage(Binder.getCallingUid(), callingPackage);
+
         boolean hasReadPermission = false;
         try {
             enforceReadPrivilegedPermission("getUiccCardsInfo");