Second batch of permission in-process API refactoring.

- Refactored isPermissionReviewRequired(),
  grantRequestedRuntimePermissions(),
  setAllowlistedRestrictedPermissions(), and setAutoRevokeExempted(),

- Added javadoc for the methods, and refactor the parameter types to
  conform with API guidelines.

- The methods are taking an int array of user IDs because they
  are (mostly) used in handlePackagePostInstall, where the install can
  happen for multiple users at once, and allowing the API
  implementation to handle multiple users at once allows optimization,
  namely calling restorePermissionState() only once for all users.

- Fixed the bug that auto revoke exemption could only be set for the
  primary users post install, but not non-primary users.

- Renamed the methods to be inclusive, replacing the term with
  allowlist. However setAutoRevokeAllowlisted() is a bit confusing so
  I'm renaming it to setAutoRevokeExempted().

- Removed the callingUid parameter from the methods. Since the methods
  were called from handlePackagePostInstall(), which is called by a
  handler thread upon receiving the corresponding message, it is
  basically useless and for two methods we were already passing
  Process.myUid().

- Renamed/Created the API implementation methods, so that *Internal()
  methods perform no checks, whereas non-internal ones perform checks.

Bug: 158736025
Test: presubmit
Change-Id: I6965e2c715bc65ddb8e2aa51c03ccb1031c3a161
4 files changed