summaryrefslogtreecommitdiffstats
path: root/cmds/am
diff options
context:
space:
mode:
authorAlexandra Gherghina <alexgherghina@google.com>2014-09-25 18:23:13 +0100
committerAlexandra Gherghina <alexgherghina@google.com>2014-09-29 12:35:03 +0000
commit979e40e9ba02b74226d9833b2f8156aa89a39053 (patch)
tree7d525caa993ae0d4b61bf27acdd2f70d384ff72c /cmds/am
parent311fc0b399f01a79169ae69aea05556043a7d7df (diff)
downloadframeworks_base-979e40e9ba02b74226d9833b2f8156aa89a39053.zip
frameworks_base-979e40e9ba02b74226d9833b2f8156aa89a39053.tar.gz
frameworks_base-979e40e9ba02b74226d9833b2f8156aa89a39053.tar.bz2
Adds the ability to start a user in background
Bug: 15900074 Change-Id: I03b278f8e7a4618ea56a5f1935cfba34beb45981
Diffstat (limited to 'cmds/am')
-rw-r--r--cmds/am/src/com/android/commands/am/Am.java18
1 files changed, 17 insertions, 1 deletions
diff --git a/cmds/am/src/com/android/commands/am/Am.java b/cmds/am/src/com/android/commands/am/Am.java
index 5ba7d50..cc0d51c 100644
--- a/cmds/am/src/com/android/commands/am/Am.java
+++ b/cmds/am/src/com/android/commands/am/Am.java
@@ -132,6 +132,7 @@ public class Am extends BaseCommand {
" am to-uri [INTENT]\n" +
" am to-intent-uri [INTENT]\n" +
" am switch-user <USER_ID>\n" +
+ " am start-user <USER_ID>\n" +
" am stop-user <USER_ID>\n" +
" am stack start <DISPLAY_ID> <INTENT>\n" +
" am stack movetask <TASK_ID> <STACK_ID> [true|false]\n" +
@@ -233,8 +234,11 @@ public class Am extends BaseCommand {
"am switch-user: switch to put USER_ID in the foreground, starting\n" +
" execution of that user if it is currently stopped.\n" +
"\n" +
+ "am start-user: start USER_ID in background if it is currently stopped,\n" +
+ " use switch-user if you want to start the user in foreground.\n" +
+ "\n" +
"am stop-user: stop execution of USER_ID, not allowing it to run any\n" +
- " code until a later explicit switch to it.\n" +
+ " code until a later explicit start or switch to it.\n" +
"\n" +
"am stack start: start a new activity on <DISPLAY_ID> using <INTENT>.\n" +
"\n" +
@@ -340,6 +344,8 @@ public class Am extends BaseCommand {
runToUri(true);
} else if (op.equals("switch-user")) {
runSwitchUser();
+ } else if (op.equals("start-user")) {
+ runStartUserInBackground();
} else if (op.equals("stop-user")) {
runStopUser();
} else if (op.equals("stack")) {
@@ -1133,6 +1139,16 @@ public class Am extends BaseCommand {
mAm.switchUser(Integer.parseInt(user));
}
+ private void runStartUserInBackground() throws Exception {
+ String user = nextArgRequired();
+ boolean success = mAm.startUserInBackground(Integer.parseInt(user));
+ if (success) {
+ System.out.println("Success: user started");
+ } else {
+ System.err.println("Error: could not start user");
+ }
+ }
+
private void runStopUser() throws Exception {
String user = nextArgRequired();
int res = mAm.stopUser(Integer.parseInt(user), null);