Play Integrity Standard Integrity Does not work only Classic Play Integrity checks work
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 3.2k
- Avg merge
- 12d 11h
- Merged PRs (30d)
- 4
Description
Describe the bug
Running a play integrity standard integrity check outputs error with current FakeStore but works with real Play store.
System.err: java.util.concurrent.ExecutionException: com.google.android.play.core.integrity.StandardIntegrityException: -19: Standard Integrity API error (-19): The StandardIntegrityTokenProvider is invalid (e.g. it is outdated).
04-09 19:27:06.291 3510 3555 W System.err: Request a new integrity token provider by calling StandardIntegrityManager#prepareIntegrityToken. (https://developer.android.com/google/play/integrity/reference/com/google/android/play/core/integrity/model/StandardIntegrityErrorCode.html#INTEGRITY_TOKEN_PROVIDER_INVALID).
But class integerity check works with current FakeStore and real Playstore. Note most integrity checker apps performs classic integrity check not standard.
To Reproduce
Steps to reproduce the behavior:
- Setup a simple app that performs standard integrity check using google cloud project number
- App crashes with error
System.err: java.util.concurrent.ExecutionException: com.google.android.play.core.integrity.StandardIntegrityException: -19: Standard Integrity API error (-19): The StandardIntegrityTokenProvider is invalid (e.g. it is outdated).
04-09 19:27:06.291 3510 3555 W System.err: Request a new integrity token provider by calling StandardIntegrityManager#prepareIntegrityToken. (https://developer.android.com/google/play/integrity/reference/com/google/android/play/core/integrity/model/StandardIntegrityErrorCode.html#INTEGRITY_TOKEN_PROVIDER_INVALID).
Expected behavior
A valid token should be returned
System
Android Version: 13
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the Standard Play Integrity flow described in the issue on Android 13 using the current FakeStore and a Google Cloud project number. Investigate the StandardIntegrityManager#prepareIntegrityToken path and compare it with the working Classic Integrity check; done means a valid standard token is returned without the provider-invalid error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile, security
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100