Skip to content

Use ECP launch to start the sideloaded channel#338

Draft
chrisdp wants to merge 2 commits into
masterfrom
feature/ecp-launch-after-sideload
Draft

Use ECP launch to start the sideloaded channel#338
chrisdp wants to merge 2 commits into
masterfrom
feature/ecp-launch-after-sideload

Conversation

@chrisdp

@chrisdp chrisdp commented May 13, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Bump roku-deploy to 3.17.3 (adds the new autoLaunch option, rokucommunity/roku-deploy#261).
  • Pass autoLaunch: false when sideloading so the device does not auto-launch the channel.
  • Post launch/dev via ECP after the sideload completes. If deepLinkUrl is set, its query string is appended to that launch call so the channel sees the deep link in its initial launch args.
  • Add rokuECP.launchApp({ channelId, params? }). params accepts a full URL, a leading-? query string, or a raw key=value query string.

Test plan

  • npm run test:nocover (the two remaining BreakpointManager failures are unrelated, pre-existing on master)
  • New unit tests for rokuECP.launchApp and the publish-then-launch flow
  • Device: sideload + launch (no deeplink)
  • Device: sideload + launch with deepLinkUrl set
  • Device: telnet adapter
  • Device: debug protocol

chrisdp added 2 commits May 12, 2026 21:08
Sets `autoLaunch: false` on the sideload so the device installs without
launching, then posts `/launch/dev` via ECP to start the channel. When
`deepLinkUrl` is set, its query string is appended to the launch call.
After publish with `autoLaunch: false`, poll `query/app-state` until
the device reports the dev channel as `inactive` or `background` before
firing the ECP launch. Bounded at 10s. Avoids racing the device's
install-settle step.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant