diff --git a/sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java b/sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java index 28e84e4791edc33d8c6850a12ccfbad9c61dcb87..3592b31596cccc11bfc38893d33a4e4915ef61b2 100644 --- a/sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java +++ b/sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java @@ -19,6 +19,7 @@ import org.chromium.mojom.sky.InputEvent; import org.domokit.activity.ActivityImpl; import java.io.File; +import java.util.ArrayList; /** * Base class for activities that use Sky. @@ -31,9 +32,16 @@ public class SkyActivity extends Activity { // Before adding more entries to this list, consider that arbitrary // Android applications can generate intents with extra data and that // there are many security-sensitive args in the binary. + ArrayList args = new ArrayList(); if (intent.getBooleanExtra("enable-checked-mode", false)) { - String[] args = { "--enable-checked-mode"}; - return args; + args.add("--enable-checked-mode"); + } + if (intent.getBooleanExtra("trace-startup", false)) { + args.add("--trace-startup"); + } + if (!args.isEmpty()) { + String[] argsArray = new String[args.size()]; + return args.toArray(argsArray); } return null; } diff --git a/sky/shell/switches.cc b/sky/shell/switches.cc index 642b345260e3b3ea91261c80f4d59892e2be8151..53bf6f6c0ccf1c39b07e6a933e835dc6daeb5249 100644 --- a/sky/shell/switches.cc +++ b/sky/shell/switches.cc @@ -21,6 +21,7 @@ void PrintUsage(const std::string& executable_name) { std::cerr << "Usage: " << executable_name << " --" << kEnableCheckedMode << " --" << kNonInteractive + << " --" << kTraceStartup << " --" << kFLX << "=FLX" << " --" << kPackageRoot << "=PACKAGE_ROOT" << " [ MAIN_DART ]" << std::endl;