diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-10-03 09:03:34 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-10-03 14:24:54 +0200 |
| commit | 57758895bc7b0f7f21497194e81172f43d634852 (patch) | |
| tree | a4a3c71f9aafbc65199e140b7111ee04163fa295 /packages/meshbay-android/README.md | |
| parent | d8f5005ba2c9a249ce5ce8976d9c3754a3a7458e (diff) | |
| download | meshbay-57758895bc7b0f7f21497194e81172f43d634852.tar.gz | |
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 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-android/README.md')
| -rw-r--r-- | packages/meshbay-android/README.md | 12 |
1 files changed, 10 insertions, 2 deletions
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 `<name>.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. |