diff options
| author | 2021-10-29 10:27:08 +0000 | |
|---|---|---|
| committer | 2021-10-29 10:27:08 +0000 | |
| commit | 2a56521b5cd5f536d727968b75011be23a10b511 (patch) | |
| tree | ce98605179178cae019d885c55d30ed08861c64c | |
| parent | 37b94b1c973a777dd538ae71ffaaf8a78c475964 (diff) | |
| parent | cfd38b49d4daac871b52a9ec064da03b5411a9ae (diff) | |
Merge "Fix: crash when running am.jar without parameters" am: 3bec47724f am: 23f93b8cf3 am: cfd38b49d4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1850984
Change-Id: Idb9495274e7e1cedae8f24db8335c8cbfdc3b97c
| -rw-r--r-- | cmds/am/src/com/android/commands/am/Am.java | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/cmds/am/src/com/android/commands/am/Am.java b/cmds/am/src/com/android/commands/am/Am.java index 4e46aa3f42d5..9564dde7fe06 100644 --- a/cmds/am/src/com/android/commands/am/Am.java +++ b/cmds/am/src/com/android/commands/am/Am.java @@ -41,6 +41,10 @@ public class Am extends BaseCommand { private IActivityManager mAm; private IPackageManager mPm; + Am() { + svcInit(); + } + /** * Command-line entry point. * @@ -50,6 +54,20 @@ public class Am extends BaseCommand { (new Am()).run(args); } + private void svcInit() { + mAm = ActivityManager.getService(); + if (mAm == null) { + System.err.println(NO_SYSTEM_ERROR_CODE); + return; + } + + mPm = IPackageManager.Stub.asInterface(ServiceManager.getService("package")); + if (mPm == null) { + System.err.println(NO_SYSTEM_ERROR_CODE); + return; + } + } + @Override public void onShowUsage(PrintStream out) { try { @@ -61,19 +79,6 @@ public class Am extends BaseCommand { @Override public void onRun() throws Exception { - - mAm = ActivityManager.getService(); - if (mAm == null) { - System.err.println(NO_SYSTEM_ERROR_CODE); - throw new AndroidException("Can't connect to activity manager; is the system running?"); - } - - mPm = IPackageManager.Stub.asInterface(ServiceManager.getService("package")); - if (mPm == null) { - System.err.println(NO_SYSTEM_ERROR_CODE); - throw new AndroidException("Can't connect to package manager; is the system running?"); - } - String op = nextArgRequired(); if (op.equals("instrument")) { |