From c0c8e0352e5dc1ad91376bbfaebcf5916868d875 Mon Sep 17 00:00:00 2001 From: lucaslin Date: Thu, 10 Dec 2020 13:12:51 +0800 Subject: [PATCH] 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 --- .../android/server/connectivity/PermissionMonitor.java | 9 +++------ .../server/connectivity/PermissionMonitorTest.java | 9 ++++----- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/services/core/java/com/android/server/connectivity/PermissionMonitor.java b/services/core/java/com/android/server/connectivity/PermissionMonitor.java index 4c63eb4881..d507b5f82b 100644 --- a/services/core/java/com/android/server/connectivity/PermissionMonitor.java +++ b/services/core/java/com/android/server/connectivity/PermissionMonitor.java @@ -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 users = mUserManager.getAliveUsers(); - if (users != null) { - for (UserInfo user : users) { - mUsers.add(user.id); - } + final List users = mUserManager.getUserHandles(true /* excludeDying */); + for (UserHandle user : users) { + mUsers.add(user.getIdentifier()); } final SparseArray> systemPermission = diff --git a/tests/net/java/com/android/server/connectivity/PermissionMonitorTest.java b/tests/net/java/com/android/server/connectivity/PermissionMonitorTest.java index de35f910d5..3556c72776 100644 --- a/tests/net/java/com/android/server/connectivity/PermissionMonitorTest.java +++ b/tests/net/java/com/android/server/connectivity/PermissionMonitorTest.java @@ -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));