Check that app ID matches system uid in LocationDisabledAppOpsTest

Apps which share the system UID, will still have a unique user section
on secondary users. Ensure we compare their app ID to the system app id,
not the cross-user UID to the (user 0 only) system uid.

Fixes: 235018052
Test: atest LocationDisabledAppOpsTest --user-type secondary_user
Change-Id: I41ccb40de69d94fc812447dcfb6d5b9d58b88a4f
diff --git a/tests/location/location_none/src/android/location/cts/none/LocationDisabledAppOpsTest.java b/tests/location/location_none/src/android/location/cts/none/LocationDisabledAppOpsTest.java
index c406052..48d5946 100644
--- a/tests/location/location_none/src/android/location/cts/none/LocationDisabledAppOpsTest.java
+++ b/tests/location/location_none/src/android/location/cts/none/LocationDisabledAppOpsTest.java
@@ -86,14 +86,17 @@
                 List<String> bypassedCheckOps = new ArrayList<>();
                 for (PackageInfo pi : pkgs) {
                     ApplicationInfo ai = pi.applicationInfo;
-                    if (ai.uid != Process.SYSTEM_UID) {
+                    int appId = UserHandle.getAppId(ai.uid);
+                    if (appId != Process.SYSTEM_UID) {
                         final int[] mode = {MODE_ALLOWED};
+                        final boolean[] isProvider = {false};
                         runWithShellPermissionIdentity(() -> {
                             mode[0] = mAom.noteOpNoThrow(
                                     OPSTR_FINE_LOCATION, ai.uid, ai.packageName);
+                            isProvider[0] = mLm.isProviderPackage(null, pi.packageName, null);
                         });
                         if (mode[0] == MODE_ALLOWED && !ignoreList.containsAll(pi.packageName)
-                                && !mLm.isProviderPackage(null, pi.packageName, null)) {
+                                && !isProvider[0]) {
                             bypassedNoteOps.add(pi.packageName);
                         }
 
@@ -104,10 +107,9 @@
                                     .checkOpNoThrow(OPSTR_FINE_LOCATION, ai.uid, ai.packageName);
                         });
                         if (mode[0] == MODE_ALLOWED && !ignoreList.includes(pi.packageName)
-                                && !mLm.isProviderPackage(null, pi.packageName, null)) {
+                                && !isProvider[0]) {
                             bypassedCheckOps.add(pi.packageName);
                         }
-
                     }
                 }
 
diff --git a/tests/tests/security/src/android/security/cts/LocationDisabledAppOpsTest.java b/tests/tests/security/src/android/security/cts/LocationDisabledAppOpsTest.java
index c6b7e35..487c3d9 100644
--- a/tests/tests/security/src/android/security/cts/LocationDisabledAppOpsTest.java
+++ b/tests/tests/security/src/android/security/cts/LocationDisabledAppOpsTest.java
@@ -86,7 +86,8 @@
                 List<String> bypassedCheckOps = new ArrayList<>();
                 for (PackageInfo pi : pkgs) {
                     ApplicationInfo ai = pi.applicationInfo;
-                    if (ai.uid != Process.SYSTEM_UID) {
+                    int appId = UserHandle.getAppId(ai.uid);
+                    if (appId != Process.SYSTEM_UID) {
                         final int[] mode = {MODE_ALLOWED};
                         runWithShellPermissionIdentity(() -> {
                             mode[0] = mAom.noteOpNoThrow(