Loading core/java/android/content/pm/PackageUserState.java +5 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,11 @@ public class PackageUserState { /** * Test if the given component is considered installed, enabled and a match * for the given flags. * * <p> * Expects at least one of {@link PackageManager#MATCH_DIRECT_BOOT_AWARE} and * {@link PackageManager#MATCH_DIRECT_BOOT_UNAWARE} are specified in {@code flags}. * </p> */ public boolean isMatch(ComponentInfo componentInfo, int flags) { if (!isInstalled(flags)) return false; Loading packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java +19 −2 Original line number Diff line number Diff line Loading @@ -839,8 +839,18 @@ public class ApplicationsState { for (int i = 0; i < mEntriesMap.size(); i++) { int userId = mEntriesMap.keyAt(i); List<ResolveInfo> intents = mPm.queryIntentActivitiesAsUser(launchIntent, PackageManager.GET_DISABLED_COMPONENTS, userId); // If we do not specify MATCH_DIRECT_BOOT_AWARE or // MATCH_DIRECT_BOOT_UNAWARE, system will derive and update the flags // according to the user's lock state. When the user is locked, components // with ComponentInfo#directBootAware == false will be filtered. We should // explicitly include both direct boot aware and unaware components here. List<ResolveInfo> intents = mPm.queryIntentActivitiesAsUser( launchIntent, PackageManager.GET_DISABLED_COMPONENTS | PackageManager.MATCH_DIRECT_BOOT_AWARE | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, userId ); synchronized (mEntriesMap) { if (DEBUG_LOCKING) Log.v(TAG, "MSG_LOAD_LAUNCHER acquired lock"); HashMap<String, AppEntry> userEntries = mEntriesMap.valueAt(i); Loading Loading @@ -1116,6 +1126,10 @@ public class ApplicationsState { public boolean mounted; /** * Setting this to {@code true} prevents the entry to be filtered by * {@link #FILTER_DOWNLOADED_AND_LAUNCHER}. */ public boolean hasLauncherEntry; public String getNormalizedLabel() { Loading Loading @@ -1286,6 +1300,9 @@ public class ApplicationsState { } }; /** * Displays a combined list with "downloaded" and "visible in launcher" apps only. */ public static final AppFilter FILTER_DOWNLOADED_AND_LAUNCHER = new AppFilter() { public void init() { } Loading Loading
core/java/android/content/pm/PackageUserState.java +5 −0 Original line number Diff line number Diff line Loading @@ -87,6 +87,11 @@ public class PackageUserState { /** * Test if the given component is considered installed, enabled and a match * for the given flags. * * <p> * Expects at least one of {@link PackageManager#MATCH_DIRECT_BOOT_AWARE} and * {@link PackageManager#MATCH_DIRECT_BOOT_UNAWARE} are specified in {@code flags}. * </p> */ public boolean isMatch(ComponentInfo componentInfo, int flags) { if (!isInstalled(flags)) return false; Loading
packages/SettingsLib/src/com/android/settingslib/applications/ApplicationsState.java +19 −2 Original line number Diff line number Diff line Loading @@ -839,8 +839,18 @@ public class ApplicationsState { for (int i = 0; i < mEntriesMap.size(); i++) { int userId = mEntriesMap.keyAt(i); List<ResolveInfo> intents = mPm.queryIntentActivitiesAsUser(launchIntent, PackageManager.GET_DISABLED_COMPONENTS, userId); // If we do not specify MATCH_DIRECT_BOOT_AWARE or // MATCH_DIRECT_BOOT_UNAWARE, system will derive and update the flags // according to the user's lock state. When the user is locked, components // with ComponentInfo#directBootAware == false will be filtered. We should // explicitly include both direct boot aware and unaware components here. List<ResolveInfo> intents = mPm.queryIntentActivitiesAsUser( launchIntent, PackageManager.GET_DISABLED_COMPONENTS | PackageManager.MATCH_DIRECT_BOOT_AWARE | PackageManager.MATCH_DIRECT_BOOT_UNAWARE, userId ); synchronized (mEntriesMap) { if (DEBUG_LOCKING) Log.v(TAG, "MSG_LOAD_LAUNCHER acquired lock"); HashMap<String, AppEntry> userEntries = mEntriesMap.valueAt(i); Loading Loading @@ -1116,6 +1126,10 @@ public class ApplicationsState { public boolean mounted; /** * Setting this to {@code true} prevents the entry to be filtered by * {@link #FILTER_DOWNLOADED_AND_LAUNCHER}. */ public boolean hasLauncherEntry; public String getNormalizedLabel() { Loading Loading @@ -1286,6 +1300,9 @@ public class ApplicationsState { } }; /** * Displays a combined list with "downloaded" and "visible in launcher" apps only. */ public static final AppFilter FILTER_DOWNLOADED_AND_LAUNCHER = new AppFilter() { public void init() { } Loading