Google Sign-In Fails on APK – Structural SHA-1 Mismatch, No User Control

Database & APIs

✅ Works perfectly on:

  • ✅ FlutterFlow Run Mode

  • ✅ FlutterFlow Web App

❌ Completely fails on:

  • ❌ APK installed on real Android devices
    → Google account selector appears
    → But nothing happens after choosing an account
    → No redirect, no login, no error — stuck at login screen

What have you tried so far?

I generated the correct production SHA keys using Android Studio

I registered this key in Firebase → Project Settings → Android App.
I removed outdated SHA keys.
OAuth/Web Client ID/Auth Provider are correctly set up.
However, FlutterFlow does not allow uploading google-services.json, so I can't control the Firebase link myself.

Confirmed Root Cause

  • FlutterFlow automatically injects hidden SHA-1 keys into Firebase.

  • These are not visible to users and reappear even after being deleted.

  • This creates a mismatch:
    → My APK is signed with my SHA-1, but
    → Firebase recognizes only the FlutterFlow-injected SHA-1, not mine.

What’s Broken in the System

  • No way to view which SHA-1 FlutterFlow is using

  • Cannot upload or override google-services.json

  • Cannot manually set signing keys

  • Build → View Signing Info is missing — even for Pro users

✅ This is not a misconfiguration on my side. Everything works perfectly in Run Mode & Web.
❌ It fails only in the APK, because of a system-level SHA mismatch I cannot fix

Customer Support Response

I contacted support several times and only received repeated Firebase setup steps like:

"Register SHA-1 → download JSON → configure OAuth → test again..."

But I've done all of this 10+ times.
This is not a setup problem — it's a hidden signing issue I cannot control or see.

🙏 Calling All FlutterFlow Users

This is beyond documentation — I need your real-world knowledge.

Have you ever fixed this?

  • How did you solve Google Sign-In failing on APK builds?

  • Did you manage to override or resign APKs externally?

  • Did you find a workaround for the hidden SHA keys?

Even a small tip or suggestion would help.
I'm blocked from production, and FlutterFlow gives no path to resolve this from the user's side

🔐 Due to security reasons, I have not attached screenshots of SHA keys or Firebase config,

but I’m happy to provide them privately to the FlutterFlow team if needed.

Did you check FlutterFlow's Documentation for this topic?
Yes
2
2 replies