summaryrefslogtreecommitdiffstats
path: root/cmds/pm
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2011-05-12 15:05:19 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-05-12 15:05:19 -0700
commit0e59729b104e48c7d935026f565c4b45f1f37d12 (patch)
treee5c1fc1e85dac0f7955144408600b912ca905a90 /cmds/pm
parent9c7c87941446cdd1263a87a8c4cc5672082c7e12 (diff)
parent972808164adde6c0784e9c836d06219a9cf7eb7f (diff)
downloadframeworks_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.java19
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");