PackageTrack
Sign in Get early access

age_verification

A Flutter plugin for querying platform age signals via Google Play Age Signals on Android and Apple DeclaredAgeRange on iOS, for regional age verification compliance.

0.2.7 gktirkha/age_verification

What this package is like to depend on

Last release 1 months ago

07 Jul 2026

Ships fairly regularly

a new release about every 2 weeks

Nearly every release is documented

notes for 8 of 8 stable releases

2 versions withdrawn

withdrawn after publishing

2 months old

10 releases · first in 2026

10 releases in the last 12 months

see the full history below

Release timeline

10 releases · Jun 2026 to Jul 2026
Release Pre-release Withdrawn

Releases

latest 10
  1. 0.2.7 07 Jul 2026
    Release notes

    feat(dart): add AgeVerification.resolveErrorCode() helper

    Open source →
    Release notes

    Dart

    • Added AgeVerification.resolveErrorCode(String? code) — resolves a raw PlatformException.code string into a typed AgeVerificationErrorCode, or null if it doesn't match a known value
    Open source →
  2. 0.2.6 07 Jul 2026
    Release notes

    Replace the vague playServicesError catch-all with seven dedicated
    error codes (playStoreNotFound, playServicesNotFound,
    cannotBindToService, playStoreVersionOutdated,
    playServicesVersionOutdated, clientTransientError, appNotOwned)
    and add internalError, giving every AgeSignalsErrorCode value its
    own corresponding AgeVerificationErrorCode. Fix a test typo
    (NOT_INITIALISEDNOT_INITIALIZED). Bump version to 0.2.6.

    BREAKING CHANGE: AgeVerificationErrorCode.playServicesError removed.

    Open source →
    Release notes

    Android

    • Fixed a test typo (NOT_INITIALISEDNOT_INITIALIZED) that referenced a non-existent enum constant

    Breaking changes

    • AgeVerificationErrorCode.playServicesError has been removed. It was a vague catch-all for five distinct AgeSignalsErrorCode conditions; each now has its own dedicated value: playStoreNotFound, playServicesNotFound, cannotBindToService, playStoreVersionOutdated, playServicesVersionOutdated. Two more Android-only conditions that previously fell back to apiNotAvailable/apiError now also have dedicated values: clientTransientError, appNotOwned, internalError. Together with the existing apiNotAvailable, networkError, and sdkVersionOutdated, every AgeSignalsErrorCode value now maps 1:1 to an AgeVerificationErrorCode value.
    Open source →
  3. 0.2.5 07 Jul 2026
    Release notes

    refactor(android): replace magic numbers with AgeSignalsErrorCode con…

    Open source →
    Release notes

    Android

    • Fixed AgeSignalsException error code mapping to use the AgeSignalsErrorCode enum instead of hardcoded numeric literals, avoiding mismatches if the SDK's internal codes change
    Open source →
  4. 0.2.4 12 Jun 2026
    Release notes

    feat: add skipEligibilityCheck param to verifyAge

    Open source →
    Release notes

    iOS

    • Added skipEligibilityCheck parameter to verifyAge — when true, the isEligibleForAgeFeatures check on iOS 26.2+ is bypassed and requestAgeRange is called directly; useful if isEligibleForAgeFeatures hangs or is unreliable in your region. Has no effect on Android. Defaults to false (existing behavior).
    Open source →
  5. 0.2.3 06 Jun 2026
    Release notes

    docs: update README examples for v0.2.3 API changes

    Open source →
    Release notes

    Updated Readme, No Code Changes

    Open source →
  6. 0.2.2 06 Jun 2026
    Release notes

    revert: roll back version to 0.2.2 and move breaking changes

    Open source →
    Release notes

    iOS

    • Replaced deprecated UIApplication.keyWindow and UIWindowScene.windows usage in presentationViewController() with UIWindowScene.keyWindow (available since iOS 15); primary path targets the foreground-active scene, fallback searches all connected scenes

    Breaking changes

    • verifyAge parameter ageGates is now named instead of positional — call sites must be updated to verifyAge(ageGates: [...]) or verifyAge()
    • AgeVerification is now a singleton — use AgeVerification.instance instead of constructing instances directly

    Housekeeping

    • Added topics to pubspec.yaml for pub.dev discoverability
    • Reformatted Android and iOS source files to consistent 4-space indentation (no logic changes)
    Open source →
  7. 0.2.1 03 Jun 2026
    Release notes

    iOS

    • Added CocoaPods podspec (ios/age_verification.podspec) for compatibility with older Flutter tooling that does not support Swift Package Manager

    Example

    • Fixed example iOS Xcode project to correctly reference the age_verification Swift Package Manager package
    Open source →
  8. 0.2.0 03 Jun 2026
    Release notes

    Breaking changes

    • Renamed AgeSignalsStatusAgeVerificationStatus for naming consistency across the public API
    Open source →
  9. 0.1.0 03 Jun 2026 withdrawn
    Release notes

    Initial working release.

    Android

    • Integrated Google Play Age Signals API (com.google.android.play:age-signals:0.0.3)
    • Implements AgeSignalsManagerFactory, AgeSignalsManager.checkAgeSignals(), and full AgeSignalsVerificationStatus mapping
    • Reports ageLower, ageUpper, and installId from AgeSignalsResult
    • Maps all AgeSignalsException error codes to typed AgeVerificationErrorCode values
    • Mock mode uses Google's official FakeAgeSignalsManager for accurate simulation

    iOS

    • Integrated Apple DeclaredAgeRange framework (iOS 26.0+)
    • Calls AgeRangeService.shared.requestAgeRange(ageGates:in:) with 1–3 age gates
    • Checks isEligibleForAgeFeatures on iOS 26.2+ to skip prompt for non-applicable regions
    • Maps AgeRangeDeclaration (.selfDeclared, .guardianDeclared) to AgeDeclarationSource
    • Catches AgeRangeService.Error.notAvailable and .invalidRequest as typed errors
    • Returns apiNotAvailable on iOS < 26.0 or when DeclaredAgeRange is not linked
    • Uses Swift Package Manager (CocoaPods podspec added in 0.2.1)

    Dart

    • Type-safe pigeon channel: AgeVerificationApi, AgeVerificationResult, AgeVerificationStatus, AgeDeclarationSource, AgeVerificationErrorCode
    • Public API: AgeVerification.init({mockConfig}) and AgeVerification.verifyAge(ageGates)
    • AgeVerificationMockConfig — pass to init() to bypass native APIs on both platforms for testing
    Open source →
  10. 0.0.1 03 Jun 2026 withdrawn
    Release notes
    • Initial plugin scaffold.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive