Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fefbeecb authored by lucaslin's avatar lucaslin
Browse files

Use getUserHandles() instead of getUsers() to get user id

UserManager#getUsers() is a hidden API, use getUserHandles() to
get user id instead in PermissionMonitor.

Bug: 171529940
Test: atest FrameworksNetTests
Change-Id: Ic304627688de8e49505a95ebc99628b2e0eafab9
parent a0f97a84
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -35,7 +35,6 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.PackageManagerInternal;
import android.content.pm.UserInfo;
import android.net.INetd;
import android.net.UidRange;
import android.os.Build;
@@ -174,11 +173,9 @@ public class PermissionMonitor implements PackageManagerInternal.PackageListObse
            netdPermsUids.put(uid, netdPermsUids.get(uid) | otherNetdPerms);
        }

        List<UserInfo> users = mUserManager.getAliveUsers();
        if (users != null) {
            for (UserInfo user : users) {
                mUsers.add(user.id);
            }
        final List<UserHandle> users = mUserManager.getUserHandles(true /* excludeDying */);
        for (UserHandle user : users) {
            mUsers.add(user.getIdentifier());
        }

        final SparseArray<ArraySet<String>> systemPermission =
+4 −5
Original line number Diff line number Diff line
@@ -58,7 +58,6 @@ import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManagerInternal;
import android.content.pm.UserInfo;
import android.net.INetd;
import android.net.UidRange;
import android.os.Build;
@@ -123,10 +122,10 @@ public class PermissionMonitorTest {
        MockitoAnnotations.initMocks(this);
        when(mContext.getPackageManager()).thenReturn(mPackageManager);
        when(mContext.getSystemService(eq(Context.USER_SERVICE))).thenReturn(mUserManager);
        when(mUserManager.getAliveUsers()).thenReturn(
                Arrays.asList(new UserInfo[] {
                        new UserInfo(MOCK_USER1, "", 0),
                        new UserInfo(MOCK_USER2, "", 0),
        when(mUserManager.getUserHandles(eq(true))).thenReturn(
                Arrays.asList(new UserHandle[] {
                        new UserHandle(MOCK_USER1),
                        new UserHandle(MOCK_USER2),
                }));

        mPermissionMonitor = spy(new PermissionMonitor(mContext, mNetdService, mDeps));