From e5608851415ec04a8450678e6399441467194ddd Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 25 Sep 2026 07:23:58 +0000 Subject: Sign debug builds with a shared, checked-in keystore "App not installed" when updating. Android generates a debug keystore per machine, so tungsten's build and the laptop's build are signed differently and each refuses to install over the other. Reproduced exactly: INSTALL_FAILED_UPDATE_INCOMPATIBLE, "signatures do not match newer version". The published APKs show the collision plainly -- 0930d0 on the 21st, 106ecafe in between, 0930d0 again after my last publish -- so an update had roughly a coin-flip chance of being installable depending on which machine built it. The checked-in key is tungsten's existing debug keystore, stock alias and password, not a freshly generated one. That matters: a new key would have been just as unusable as the mismatch, forcing a second uninstall and a second loss of every playback position, right after Peter had already done one. Verified by installing the currently-published APK and updating in place over it. Safe to commit -- it signs debug builds of a personal sideloaded app. It must never sign a release, where the key is the app's identity. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_018AwnALZL6bD4VBtATDVv3B --- keystore/listen-debug.keystore | Bin 0 -> 2618 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 keystore/listen-debug.keystore (limited to 'keystore') diff --git a/keystore/listen-debug.keystore b/keystore/listen-debug.keystore new file mode 100644 index 0000000..c2b34ce Binary files /dev/null and b/keystore/listen-debug.keystore differ -- cgit v1.2.3