You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: forward --launch-args to adb shell am start on Android
Stacked on top of the iOS-only --launch-args PR (#598). Removes the
Android UNSUPPORTED_OPERATION guard added with the Maestro work and
threads launchArgs through all five Android open paths.
Per-path threading:
- openAndroidPackage (-p package launch + activity-fallback)
- openAndroidPackageActivity (-n component override)
- openAndroidIntent (named intent action)
- openAndroidDeepLink (-a VIEW -d <url>, with optional -p)
- openAndroidAppBoundDeepLink (-a VIEW -d <url> -p <resolved>)
`adb shell` joins its argv with spaces and feeds the result to a
device shell, which re-tokenises. The other am-start arguments are
well-known and never contain shell-significant characters, so they
round-trip untouched. Launch arguments are user-supplied and may
contain JSON, spaces, `#`, etc.; each is single-quoted unless it
consists entirely of safe shell characters (the same approach long
used in adb-driven tooling for the same reason).
Help text on --launch-args is updated to describe the Android shape
(`adb shell am start args, e.g. --es key value` for typed Intent
extras) and macOS remains the only rejected platform.
Tests:
- src/platforms/android/__tests__/index.test.ts: five new tests
cover package, activity-override, deep-link URL, app-bound URL,
and JSON-with-shell-metacharacters quoting paths.
- src/core/__tests__/dispatch-open.test.ts: the previous
"rejects Android launch arguments" test is inverted into a
forwarding test that asserts openAndroidApp receives the args.
Validated end-to-end on a Pixel emulator running a debug build whose
launcher activity reads an Intent extra to bootstrap test
configuration: a JSON value containing `#`, `/`, `:` survived
single-quoted transit through `adb shell` and arrived at the
activity unchanged.
0 commit comments