Skip to content

ADFA-4984: revive OTA self-update + split manifest/binary to k2go-download - #320

Merged
luisguzman-adfa merged 5 commits into
mainfrom
feat/ADFA-4984-ota-revive-split
Aug 1, 2026
Merged

ADFA-4984: revive OTA self-update + split manifest/binary to k2go-download#320
luisguzman-adfa merged 5 commits into
mainfrom
feat/ADFA-4984-ota-revive-split

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

Revives the in-app OTA updater and decouples its two fixed URLs.

UpdateController: manifest + APK base URLs → k2go-download. Install stays gated by same-certificate signature verification (no hash needed).
LibraryActivity owns the UpdateController (silent auto-check per launch + download-receiver lifecycle); Settings → About gets a "Check for updates" entry.
Tag CI workflow builds update.json from the top ota-release-notes.md entry + the built APK filenames, uploaded after the APKs (fixed key → always latest).
Adds ota-release-notes.md (minimal editorial notes) and ota-migration-bridge.md (one-time cutover runbook).

Publishing stays tag-only; nothing hits R2 until a v* tag.

…download

- UpdateController: point the manifest and APK base URLs to k2go-download; the
  install stays gated by same-certificate signature verification (no hash needed).
- LibraryActivity: own the UpdateController (silent auto-check per launch, download
  receiver lifecycle) and expose it to the About screen.
- Settings > About: add a "Check for updates" entry.
- CI (tag workflow): build update.json from the top ota-release-notes.md entry and
  the built APK filenames, uploaded after the APKs (fixed key -> always latest).
- Add ota-release-notes.md (minimal editorial OTA notes) and ota-migration-bridge.md
  (one-time cutover runbook for installs on the old host).
…check, CI apk guard)

- UpdateController: skip the "update available" dialog if the Activity is finishing/
  destroyed, since the check returns async (avoids BadTokenException).
- LibraryActivity: defer the one-per-launch auto-check until the boot gate opens
  (onServerReady) so the dialog never lands over the gate; still runs at most once.
- CI: fail the update.json step early if any ABI APK is missing, instead of
  publishing an incomplete manifest.
@luisguzman-adfa
luisguzman-adfa merged commit d0f531b into main Aug 1, 2026
3 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the feat/ADFA-4984-ota-revive-split branch August 1, 2026 23:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant