OSDN Git Service

Add API for checking whether a user is restricted.
authorHai Zhang <zhanghai@google.com>
Tue, 19 Mar 2019 01:21:38 +0000 (18:21 -0700)
committerHai Zhang <zhanghai@google.com>
Tue, 19 Mar 2019 01:21:38 +0000 (18:21 -0700)
This is used by the SMS role.

Bug: 124452117
Test: build
Change-Id: I90bb17654e63cda34b3253024836aa9f4dbc2a4f

api/system-current.txt
core/java/android/os/UserManager.java

index 2724133..29b1dbc 100644 (file)
@@ -5616,6 +5616,7 @@ package android.os {
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isManagedProfile(int);
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isPrimaryUser();
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile();
+    method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean isRestrictedProfile(@NonNull android.os.UserHandle);
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public boolean removeUser(@NonNull android.os.UserHandle);
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserIcon(@NonNull android.graphics.Bitmap);
     method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserName(@Nullable String);
index 790bb27..9c9829f 100644 (file)
@@ -1470,6 +1470,24 @@ public class UserManager {
     }
 
     /**
+     * Check if a user is a restricted profile. Restricted profiles may have a reduced number of
+     * available apps, app restrictions, and account restrictions.
+     *
+     * @param user the user to check
+     * @return whether the user is a restricted profile.
+     * @hide
+     */
+    @SystemApi
+    @RequiresPermission(android.Manifest.permission.MANAGE_USERS)
+    public boolean isRestrictedProfile(@NonNull UserHandle user) {
+        try {
+            return mService.getUserInfo(user.getIdentifier()).isRestricted();
+        } catch (RemoteException re) {
+            throw re.rethrowFromSystemServer();
+        }
+    }
+
+    /**
      * Checks if specified user can have restricted profile.
      * @hide
      */