diff options
author | Dianne Hackborn <hackbod@google.com> | 2011-05-12 15:05:19 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-05-12 15:05:19 -0700 |
commit | 0e59729b104e48c7d935026f565c4b45f1f37d12 (patch) | |
tree | e5c1fc1e85dac0f7955144408600b912ca905a90 /cmds/pm | |
parent | 9c7c87941446cdd1263a87a8c4cc5672082c7e12 (diff) | |
parent | 972808164adde6c0784e9c836d06219a9cf7eb7f (diff) | |
download | frameworks_base-0e59729b104e48c7d935026f565c4b45f1f37d12.zip frameworks_base-0e59729b104e48c7d935026f565c4b45f1f37d12.tar.gz frameworks_base-0e59729b104e48c7d935026f565c4b45f1f37d12.tar.bz2 |
am 97280816: am 0f1de9ad: New compat mode front end: UI and persistence.
* commit '972808164adde6c0784e9c836d06219a9cf7eb7f':
New compat mode front end: UI and persistence.
Diffstat (limited to 'cmds/pm')
-rw-r--r-- | cmds/pm/src/com/android/commands/pm/Pm.java | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/cmds/pm/src/com/android/commands/pm/Pm.java b/cmds/pm/src/com/android/commands/pm/Pm.java index d058e38..b759de0 100644 --- a/cmds/pm/src/com/android/commands/pm/Pm.java +++ b/cmds/pm/src/com/android/commands/pm/Pm.java @@ -193,6 +193,7 @@ public final class Pm { private void runListPackages(boolean showApplicationPackage) { int getFlags = 0; boolean listDisabled = false, listEnabled = false; + boolean listSystem = false, listThirdParty = false; try { String opt; while ((opt=nextOption()) != null) { @@ -206,6 +207,10 @@ public final class Pm { listDisabled = true; } else if (opt.equals("-e")) { listEnabled = true; + } else if (opt.equals("-s")) { + listSystem = true; + } else if (opt.equals("-3")) { + listThirdParty = true; } else if (opt.equals("-u")) { getFlags |= PackageManager.GET_UNINSTALLED_PACKAGES; } else { @@ -231,8 +236,12 @@ public final class Pm { if (filter != null && !info.packageName.contains(filter)) { continue; } + final boolean isSystem = + (info.applicationInfo.flags&ApplicationInfo.FLAG_SYSTEM) != 0; if ((!listDisabled || !info.applicationInfo.enabled) && - (!listEnabled || info.applicationInfo.enabled)) { + (!listEnabled || info.applicationInfo.enabled) && + (!listSystem || isSystem) && + (!listThirdParty || !isSystem)) { System.out.print("package:"); if (showApplicationPackage) { System.out.print(info.applicationInfo.sourceDir); @@ -993,7 +1002,7 @@ public final class Pm { private static void showUsage() { System.err.println("usage: pm [list|path|install|uninstall]"); - System.err.println(" pm list packages [-f] [-d] [-e] [-u] [FILTER]"); + System.err.println(" pm list packages [-f] [-d] [-e] [-s] [-e] [-u] [FILTER]"); System.err.println(" pm list permission-groups"); System.err.println(" pm list permissions [-g] [-f] [-d] [-u] [GROUP]"); System.err.println(" pm list instrumentation [-f] [TARGET-PACKAGE]"); @@ -1010,8 +1019,10 @@ public final class Pm { System.err.println("The list packages command prints all packages, optionally only"); System.err.println("those whose package name contains the text in FILTER. Options:"); System.err.println(" -f: see their associated file."); - System.err.println(" -d: filter to include disbled packages."); - System.err.println(" -e: filter to include enabled packages."); + System.err.println(" -d: filter to only show disbled packages."); + System.err.println(" -e: filter to only show enabled packages."); + System.err.println(" -s: filter to only show system packages."); + System.err.println(" -3: filter to only show third party packages."); System.err.println(" -u: also include uninstalled packages."); System.err.println(""); System.err.println("The list permission-groups command prints all known"); |