From 57758895bc7b0f7f21497194e81172f43d634852 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Sat, 3 Oct 2026 09:03:34 +0200 Subject: feat(android): casting through a LAN relay and the platform cast SDK A port of cast-relay.js (backlog also bounded in bytes), discovery and control with the default media receiver, relay calls kept in order, and a foreground service plus a WebView kept visible so a cast survives the screen going off. Co-Authored-By: Claude Opus 5.5 --- packages/meshbay-android/README.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'packages/meshbay-android/README.md') diff --git a/packages/meshbay-android/README.md b/packages/meshbay-android/README.md index 859cf00..68f6dad 100644 --- a/packages/meshbay-android/README.md +++ b/packages/meshbay-android/README.md @@ -18,6 +18,14 @@ Settings (a Storage Access Framework tree, as `.part` until complete) or the system Downloads collection (a pending entry until complete) — and the page holds an opaque id, never a URI. Uploads come through the system picker. +Casting: the page pushes the decrypted stream to a local HTTP relay (a port of +the desktop's `cast-relay.js`, bound to the Wi-Fi address only); receivers are +found and driven through the platform cast SDK with the default media receiver. +While a cast runs, a media-playback foreground service holds the CPU and the +Wi-Fi, and the WebView is kept reported visible — without that, Chromium +freezes the page 60 s after the screen goes off. Where play services are +absent, the page is offered no cast at all. + ```bash # needs JDK 17+ and an Android SDK (ANDROID_HOME, or sdk.dir in local.properties) ./gradlew assembleDebug # app/build/outputs/apk/debug/app-debug.apk @@ -27,5 +35,5 @@ page holds an opaque id, never a URI. Uploads come through the system picker. The security contract is also pinned from the Python suite by reading this source: `packages/meshbay-hub/tests/test_android_shell.py`. -Not built yet: casting, phone-specific behaviour (back button, network -handover, keeping a transfer alive with the screen off), signed releases. +Not built yet: phone-specific behaviour (back button, network handover, +keeping a download alive with the screen off), signed releases. -- cgit v1.2.3