Skip to content

Require immediate Google Play updates - #541

Open
frankii91 wants to merge 1 commit into
privacyidea:masterfrom
frankii91:feature/mandatory-in-app-updates
Open

Require immediate Google Play updates#541
frankii91 wants to merge 1 commit into
privacyidea:masterfrom
frankii91:feature/mandatory-in-app-updates

Conversation

@frankii91

Copy link
Copy Markdown

Summary

  • add Google Play immediate in-app update support to both official app entry points
  • check for updates at startup and whenever the app resumes
  • show a localized, non-dismissible update gate when Google Play reports that an immediate update is available
  • resume a developer-triggered immediate update that is already in progress

Motivation

Google Play background updates are optional and are not guaranteed to run promptly. Without an in-app update check, an authenticator can continue running an obsolete client even when a newer Play release contains important security, protocol-compatibility, or reliability fixes.

The application previously had no active update path. This change asks the Google Play runtime for the authoritative update state and blocks access only when Play reports both that an update is available and that the immediate flow is allowed.

Once the gate is shown, it cannot be dismissed by tapping outside it or using the system back action. If starting the Play flow fails or the user returns from it without updating, the gate remains visible and the update can be retried.

Unchanged behavior

  • non-Android platforms continue without an update check
  • Android installations for which Google Play does not offer an immediate update continue normally
  • update-check failures do not block application startup
  • Google Play remains responsible for download, signature verification, installation, and restart
  • there is no background timer or custom update server

Validation

  • focused widget tests: 6 passed
  • full Flutter test suite: passed
  • Android netknights debug APK build: passed
  • git diff --check: passed
  • static analysis reports no diagnostics in the new gate or its tests

The current upstream analyzer baseline remains non-zero with 58 existing diagnostics (57 info diagnostics and one invalid_annotation_target warning in lib/model/token_folder.dart). None are introduced by this change.

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