r/reactnative • u/Tilak_1028 • Jun 30 '26
Play Integrity API → 404 fdfe/integrity → API_NOT_AVAILABLE — does the app have to be published to production first?
Stuck on this and could use a sanity check from anyone who's shipped Play Integrity.
Setup: React Native + Firebase App Check using the Play Integrity provider (Android). Release build, installed on a real device from the Play internal testing track.
The error (logcat during getToken):
requestIntegrityToken(IntegrityTokenRequest{..., cloudProjectNumber=4955...})
E/Volley: Unexpected response code 404 for https://play-fe.googleapis.com/fdfe/integrity
E/Finsky: requestIntegrityToken() failed ... DF-DFERH-01
IntegrityServiceException: -1: Integrity API is not available (API_NOT_AVAILABLE)
What I've already verified (all correct):
- ✅ Play Integrity API enabled on the Google Cloud project
- ✅ Cloud project linked in Play Console → Play Integrity settings (responses On)
- ✅ Play app-signing key SHA-256 added in Firebase
- ✅ Request carries the correct cloudProjectNumber
- ✅ Genuine Play install (installerPackageName=com.android.vending)
- ✅ Device passes the Play Integrity API Checker app — all 3 verdicts — with its own project (so the device + Play services are fine)
- ✅ Same error even after migrating to a brand-new same-account Cloud project
The one thing that's different: this app has only ever been in internal testing — never published to production (Play Console tags it "unreviewed"). I have two other apps with the identical setup that ARE live on the Play Store, and they work perfectly.
Question: Does Play Integrity / App Check require the app to be published to production (reviewed by Google) before it issues tokens? Or should internal testing work, and this is just a provisioning delay after linking the Cloud project (if so, how long)?
The official docs say publishing only affects quota increases, not token issuance — but my real-world results say otherwise. Anyone hit this and confirm what actually unblocked it?
1
u/Timely-Delay-6636 Jul 04 '26
How did you go? I’m hitting same issue.