Repository navigation
Diagnose background update checks and prompt for detected updates - #61
Merged
Merged
Conversation
andre487
enabled auto-merge (squash)
October 6, 2026 12:51
APK artifacts
Built from commit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A successful manual update check did not explain why no background notification appeared: scheduled failures were discarded and detection depended on notification delivery. Record the latest background attempt's time, source, and outcome on the update screen; keep manual checks separate. Retry network failures and HTTP 429/5xx using JobScheduler exponential backoff starting at 30 minutes. Android still controls execution timing.
Persist the detected version independently of notification permission and show a dialog on app entry. GitHub opens the existing update screen for a fresh check and explicit download consent; F-Droid opens its package link in a compatible client or browser. Remind later (or dismiss) delays dialog and notification for a week; skip suppresses that version in that source. Clear or suppress stale detections after a successful no-update check, source change, or installation. No APK URLs or raw errors are persisted for this feature.
Update English/Russian strings and documentation. Dialog secondary actions are in scrollable content so the third action is not clipped.
Validation: bundle exec fastlane android_checks passed (184 JVM tests, lint, debug APK, verified unsigned release APK). New tests cover background failures/cancellation, source changes, persistence independent of notifications, reminders/skips, both dialog update routes, and diagnostic UI isolation from manual checks. Visually checked on an API 35 emulator with synthetic update metadata at normal and 1.5× font scale; temporary emulator changes were not saved.
The original missed notification on the disconnected physical phone remains undiagnosed; this change provides evidence for subsequent attempts and improves transient-error handling.