diff options
| author | Adam Soltys <[email protected]> | 2026-09-12 15:52:54 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-09-12 15:52:54 -0700 |
| commit | 7fcad2ddfbaae862d150430b27674606ebca299e (patch) | |
| tree | 92310485986dada95bc58efcc15eda98bf493786 /android/app/src/webview/AndroidManifest.xml | |
| parent | 85d7858a0ef4b4f3ee60eb2bd5621e4899195935 (diff) | |
| download | coinosv3-7fcad2ddfbaae862d150430b27674606ebca299e.tar.gz coinosv3-7fcad2ddfbaae862d150430b27674606ebca299e.zip | |
Proven on a phone: woken from a cold stop in four seconds.
The whole chain, on real hardware, with the shipping APK installed:
am broadcast → PushReceiver → expedited job → off-screen WebView →
v3.coinos.io/?wake= → the wallet restored from its vault → CoinosHost.done()
15:49:52.341 schedule -> 1
15:49:52.390 job started (49ms later)
15:49:56.602 finishing (page said so)
Four and a bit seconds from a force-stopped app to the page reporting it had
dealt with the payload — not the timeout, the page. A notify payload raised
the right notification too ("You were paid", "New message"), and the wallet
it woke was one imported into the WebView build minutes earlier, restored
from the vault in a process that had been killed.
The payload no longer goes to logcat. It carries the user's push, and
anything with ADB can read that.
Unproven, and the one link I couldn't close here: the distributor handshake.
There's no UnifiedPush distributor on this phone, so every push above was a
broadcast I sent by hand — which is exactly what a distributor sends, but
it isn't the same as watching ntfy do it.
Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_019mrt228Upn9nNCwGixzSLx
Diffstat (limited to 'android/app/src/webview/AndroidManifest.xml')
0 files changed, 0 insertions, 0 deletions
