diff options
author | Dale Hawkins <dkhawk@google.com> | 2014-02-26 16:39:51 -0700 |
---|---|---|
committer | Dale Hawkins <dkhawk@google.com> | 2014-02-26 18:01:00 -0700 |
commit | 28600e261c088eddcd0201820ed93730c77af282 (patch) | |
tree | 53d62682d1e1b993c55055044f4d2bb56845690d /cmds/am/src | |
parent | adcd253a144bc0c8efdfec6de63adf6bfb97acbd (diff) | |
download | frameworks_base-28600e261c088eddcd0201820ed93730c77af282.zip frameworks_base-28600e261c088eddcd0201820ed93730c77af282.tar.gz frameworks_base-28600e261c088eddcd0201820ed93730c77af282.tar.bz2 |
Adds support for array string extra.
Adds support for setting an array string extra on an intent when
launching an activity/service. Allows inclusion of commas using
an escape character.
Change-Id: I8857f7d28d60b75ddc65dc47f345a77230d00467
Diffstat (limited to 'cmds/am/src')
-rw-r--r-- | cmds/am/src/com/android/commands/am/Am.java | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/cmds/am/src/com/android/commands/am/Am.java b/cmds/am/src/com/android/commands/am/Am.java index 89e15d2..01e7615 100644 --- a/cmds/am/src/com/android/commands/am/Am.java +++ b/cmds/am/src/com/android/commands/am/Am.java @@ -232,6 +232,8 @@ public class Am extends BaseCommand { " [--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]]\n" + " [--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]]\n" + " [--efa <EXTRA_KEY> <EXTRA_FLOAT_VALUE>[,<EXTRA_FLOAT_VALUE...]]\n" + + " [--esa <EXTRA_KEY> <EXTRA_STRING_VALUE>[,<EXTRA_STRING_VALUE...]]\n" + + " (to embed a comma into a string escape it using \"\\,\")\n" + " [-n <COMPONENT>] [-f <FLAGS>]\n" + " [--grant-read-uri-permission] [--grant-write-uri-permission]\n" + " [--debug-log-resolution] [--exclude-stopped-packages]\n" + @@ -419,6 +421,15 @@ public class Am extends BaseCommand { } intent.putExtra(key, list); hasIntentInfo = true; + } else if (opt.equals("--esa")) { + String key = nextArgRequired(); + String value = nextArgRequired(); + // Split on commas unless they are preceeded by an escape. + // The escape character must be escaped for the string and + // again for the regex, thus four escape characters become one. + String[] strings = value.split("(?<!\\\\),"); + intent.putExtra(key, strings); + hasIntentInfo = true; } else if (opt.equals("--ez")) { String key = nextArgRequired(); String value = nextArgRequired(); |