summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
index 6d6a4b55bd93..739245330d7c 100644
--- a/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
+++ b/packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java
@@ -46,6 +46,8 @@ import android.text.format.Formatter;
import android.util.Log;
import android.util.SparseArray;
+import com.android.internal.util.ArrayUtils;
+
import java.io.File;
import java.text.Collator;
import java.text.Normalizer;
@@ -123,8 +125,8 @@ public class ApplicationsState {
mPm = mContext.getPackageManager();
mIpm = AppGlobals.getPackageManager();
mUm = (UserManager) app.getSystemService(Context.USER_SERVICE);
- for (UserHandle user : mUm.getUserProfiles()) {
- mEntriesMap.put(user.getIdentifier(), new HashMap<String, AppEntry>());
+ for (int userId : mUm.getProfileIdsWithDisabled(UserHandle.myUserId())) {
+ mEntriesMap.put(userId, new HashMap<String, AppEntry>());
}
mThread = new HandlerThread("ApplicationsState.Loader",
Process.THREAD_PRIORITY_BACKGROUND);
@@ -426,7 +428,8 @@ public class ApplicationsState {
}
private void addUser(int userId) {
- if (mUm.getUserProfiles().contains(new UserHandle(userId))) {
+ final int profileIds[] = mUm.getProfileIdsWithDisabled(UserHandle.myUserId());
+ if (ArrayUtils.contains(profileIds, userId)) {
synchronized (mEntriesMap) {
mEntriesMap.put(userId, new HashMap<String, AppEntry>());
if (mResumed) {