SkateSpots/android-templates
shakespeare.diy c7e890e65c Citrine: allow loopback ws:// in WebView so the local relay connects (1.3.5)
The real fix for "Citrine running but 0 connections": the app is served over
https in the WebView and Citrine listens on plaintext ws://127.0.0.1, which
modern Android WebViews block as mixed content BEFORE it reaches the network
layer — allowMixedContent + the loopback network-security-config don't fully
cover WebSocket mixed content.

MainActivity now sets the bridge WebView's mixed-content mode to
MIXED_CONTENT_ALWAYS_ALLOW after super.onCreate(), which lets the localhost
ws:// connection through for every user. All real traffic stays wss:///https://;
this only unblocks the loopback relay. The WebViewClient is left untouched
(overriding it previously caused a black screen). Wrapped in try/catch so it can
never crash the launcher.

Also removed the temporary on-screen probe debug readout (kept the diagnostic
fields in useCitrine, unused by UI, for future use).

Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
2026-09-09 10:47:39 +07:00
..
AmberIntentPlugin.java fix(amber): Amethyst-style foreground-intent signer to end the GrapheneOS sign hang 2026-09-07 12:39:00 +07:00
MainActivity.java Citrine: allow loopback ws:// in WebView so the local relay connects (1.3.5) 2026-09-09 10:47:39 +07:00
network_security_config.xml Citrine: native cleartext config, default-pool write wiring, polished UI (1.3.1) 2026-09-08 19:11:51 +07:00