Respect RESTRICTION_REVOKED in PermissionFlags.isAppOpGranted()

PermissionFlags.isPermissionGranted() returns true for legacy (e.g.
pre-M) apps that has a hard restricted permission so that their
permissions are kept granted, however we still keep their app ops
revoked if their permissions are restricted, so we should return false
when seeing RESTRICTION_REVOKED in PermissionFlags.isAppOpGranted().

Test: RestrictedPermissionsTest
Change-Id: I7980ec087096a64641b49daeb9988eee5e047de5
diff --git a/services/permission/java/com/android/server/permission/access/permission/PermissionFlags.kt b/services/permission/java/com/android/server/permission/access/permission/PermissionFlags.kt
index b9d89c2..28889de 100644
--- a/services/permission/java/com/android/server/permission/access/permission/PermissionFlags.kt
+++ b/services/permission/java/com/android/server/permission/access/permission/PermissionFlags.kt
@@ -347,7 +347,8 @@
     }
 
     fun isAppOpGranted(flags: Int): Boolean =
-        isPermissionGranted(flags) && !flags.hasBits(APP_OP_REVOKED)
+        isPermissionGranted(flags) && !flags.hasBits(RESTRICTION_REVOKED) &&
+            !flags.hasBits(APP_OP_REVOKED)
 
     fun toApiFlags(flags: Int): Int {
         var apiFlags = 0