[codex] Show Android achievement completion banners#238
Draft
JoelFerrando wants to merge 2 commits into
Draft
Conversation
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.
What changed
Achievement.showsCompletionBannerfrom theunlockmethod channel call.true, Android invokes Play Gamesunlock(...)so Google Play Games can show its native achievement completion banner.unlockImmediate(...)afterward so the DartFuturekeeps the existing success/error behavior.showsCompletionBanneris no longer documented as iOS-only.Why
The Dart/platform-interface layer already sends
showsCompletionBanner, and iOS/macOS already honor it. Android dropped the argument and only usedunlockImmediate(...), which can confirm the unlock result but does not trigger the native Play Games completion UI. Apps that rely on the native banner therefore need a custom Android bridge today.Compatibility
This does not add a new public API. It keeps the existing default of
showsCompletionBanner: true, preserves the existingFuturesuccess/error contract throughunlockImmediate(...), and only changes Android so it respects the flag that Dart already sends.Validation
dart format games_services/lib/src/achievements.dart games_services/lib/src/games_services.dart games_services_platform_interface/lib/src/models/achievement.dartflutter analyze --no-fatal-warningsingames_services(only the repo's existing localpathdependency warning is reported)dart analyzeingames_services_platform_interfaceflutter build apk --debugingames_services/example