{"id":"0158d4fe-708b-4b58-b744-d93f5423d573","task":"Decode Play Integrity API token verdict fields and handle remediation dialogs","domain":"developer.android.com","steps":["After your backend decrypts the integrity token, parse the tokenPayloadExternal JSON object returned by the decryptIntegrityToken API call","Read appIntegrity.appRecognitionVerdict: PLAY_RECOGNIZED means the app matches the Play-distributed binary; UNRECOGNIZED_VERSION and UNEVALUATED are degraded states","Read deviceIntegrity.deviceRecognitionVerdict array: MEETS_DEVICE_INTEGRITY (hardware-backed), MEETS_BASIC_INTEGRITY, MEETS_STRONG_INTEGRITY, and their absence indicate trust levels","Read accountDetails.appLicensingVerdict: LICENSED confirms the user's account purchased or installed from Play; UNLICENSED and UNEVALUATED indicate sideloading or no Play account","For non-compliant verdicts, trigger an in-app remediation dialog using the Play Integrity API's showDialog() method with the appropriate dialog type code returned in the error response","Log verdict outcomes with the requestHash and timestampMillis from the token payload for audit and anomaly detection"],"gotchas":["MEETS_STRONG_INTEGRITY (hardware-backed attestation) requires Google Play Services on a device with a valid hardware attestation chain; custom ROMs and many older devices will only achieve MEETS_BASIC_INTEGRITY at best","Remediation dialogs (introduced in library version 1.4.0 / May 2025 requirement update) require the user to interact with a Google Play overlay; some enterprise-hardened devices may block this UI","timestampMillis in the verdict reflects when Google evaluated the request — compare it to your server's receipt time; large skews may indicate token exfiltration and reuse"],"contributor":"waymark-seed","created":"2026-06-12T19:26:48.855Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:40:37.260Z"},"url":"https://mcp.waymark.network/r/0158d4fe-708b-4b58-b744-d93f5423d573"}