From f50a293bed5958532697106034b82361ec763d96 Mon Sep 17 00:00:00 2001 From: Jiyong Park Date: Mon, 17 Dec 2018 13:54:40 +0900 Subject: [PATCH] Show version for APEXes --show-versioncode now works for APEXes as well. Bug: 117589375 Test: $ cmd package list packages --apex-only --show-versioncode package:com.android.conscrypt versionCode:1 package:com.android.resolv versionCode:1 package:com.android.runtime versionCode:1 package:com.android.tzdata versionCode:31000010 Change-Id: I3f29bb560cdbd54d7e8377d09ec261a569f35901 --- .../android/server/pm/PackageManagerShellCommand.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java index 7856bcf956cba..e5b9030247950 100644 --- a/services/core/java/com/android/server/pm/PackageManagerShellCommand.java +++ b/services/core/java/com/android/server/pm/PackageManagerShellCommand.java @@ -627,9 +627,13 @@ class PackageManagerShellCommand extends ShellCommand { pw.print("="); } pw.print(info.packageName); - if (showVersionCode && !isApex) { + if (showVersionCode) { pw.print(" versionCode:"); - pw.print(info.applicationInfo.versionCode); + if (info.applicationInfo != null) { + pw.print(info.applicationInfo.versionCode); + } else { + pw.print(info.versionCode); + } } if (listInstaller && !isApex) { pw.print(" installer="); @@ -2701,7 +2705,7 @@ class PackageManagerShellCommand extends ShellCommand { pw.println(" Prints all system libraries."); pw.println(""); pw.println(" list packages [-f] [-d] [-e] [-s] [-3] [-i] [-l] [-u] [-U] "); - pw.println(" [--apex-only] [--uid UID] [--user USER_ID] [FILTER]"); + pw.println(" [--show-versioncode] [--apex-only] [--uid UID] [--user USER_ID] [FILTER]"); pw.println(" Prints all packages; optionally only those whose name contains"); pw.println(" the text in FILTER. Options are:"); pw.println(" -f: see their associated file"); @@ -2714,6 +2718,7 @@ class PackageManagerShellCommand extends ShellCommand { pw.println(" -l: ignored (used for compatibility with older releases)"); pw.println(" -U: also show the package UID"); pw.println(" -u: also include uninstalled packages"); + pw.println(" --show-versioncode: also show the version code"); pw.println(" --apex-only: only show APEX packages"); pw.println(" --uid UID: filter to only show packages with the given UID"); pw.println(" --user USER_ID: only list packages belonging to the given user");