From 621305ab0363a43edc62a69664de7254f03514e7 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Sat, 17 Oct 2026 13:29:48 +0200 Subject: docs: the Android application asks for the local network Co-Authored-By: Claude Opus 5.5 --- docs/MESHBAY_DESIGN.md | 15 +++++++++++++++ docs/QUICKSTART.md | 3 ++- docs/USERGUIDE.md | 4 ++++ 3 files changed, 21 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md index dc9cde9c..0160b97f 100644 --- a/docs/MESHBAY_DESIGN.md +++ b/docs/MESHBAY_DESIGN.md @@ -4168,6 +4168,21 @@ narrow bridge — and Android has all three: notification's link is a route in the page, applied as `location.hash`, never loaded. No VAPID yet: a distributor that requires it refuses, and the phone fetches instead. +- **The local network is a permission the person grants** (Android 17, + `ACCESS_LOCAL_NETWORK`, shown as "Nearby devices"), since the application + targets SDK 37. The node is usually on the phone's Wi-Fi and the WebView's + WebRTC carries the application's permission: without it the node's + addresses on that Wi-Fi are dropped, and the group opens on mobile data and + not at home. `shell/LocalNetwork.kt` asks when a group is first opened, + never at start; a refusal the connection runs into is named + (`local_network_blocked`) and the group page offers the question again + while Android will still ask, then the application's settings. Moving to + SDK 37 also took the permission back from an installed application, which + had it implied before: the first group opened after the update asks. +- **The page hears when the phone changes network** (`meshbay-default-network`, + from the default network callback), mobile data to Wi-Fi or back, and checks + the connection it holds (transport.js `onNetworkChange`). The event carries + nothing about either network. Release builds are signed with the release key, distributed as a direct APK; the key stays outside the repository and a release build without it fails diff --git a/docs/QUICKSTART.md b/docs/QUICKSTART.md index 31e12cba..9f1040e0 100644 --- a/docs/QUICKSTART.md +++ b/docs/QUICKSTART.md @@ -402,7 +402,8 @@ catch most people: browser to reach your local network the first time (**Settings → Apps → Chrome → Permissions → Nearby devices**): Android 17 requires it and Chrome does not ask, and without it the phone reaches your node only on - mobile data. + mobile data. The MeshBay Android application asks for it when you first + open a group: answer **Allow**. - **Read [`USERGUIDE.md`](USERGUIDE.md)** — what each application does, how members are managed, what happens when someone leaves, what is private and what is not, and what to do when something breaks. diff --git a/docs/USERGUIDE.md b/docs/USERGUIDE.md index 7855c234..79481106 100644 --- a/docs/USERGUIDE.md +++ b/docs/USERGUIDE.md @@ -1112,6 +1112,10 @@ opens. The group says so rather than "DataChannel closed". To allow it: Android **Settings → Apps → Chrome → Permissions → Nearby devices → Allow**, then **Retry**. The same goes for any other browser you use on the phone. A browser on a computer is not affected. +The MeshBay Android application asks for it itself the first time you open a +group. If you said no, the group offers **Allow** to be asked again, or, once +Android stops asking, **Open settings**: there, **Permissions → Nearby +devices → Allow**, then come back to the application. **A shared directory reads as empty and everything else looks right.** A mount the service cannot see. The systemd drop-in needs -- cgit v1.2.3