# Android Google Sign-In fails silently on the Play Store build but worked on direct APKs

> Play App Signing re-signs .aab uploads with Play's own key. The Android OAuth client in Google Cloud only had the upload key's SHA-1, so Play-installed builds no longer matched.

Web page: https://davidewins.com/errors/google-signin-play-app-signing-sha1

React Native. Confirmed fix, 26 September 2026.

Versions: @react-native-google-signin, Play App Signing

Error:

```
DEVELOPER_ERROR (status 10)
```

## Cause

Play App Signing re-signs .aab uploads with Play's own key. The Android OAuth client in Google Cloud only had the upload key's SHA-1, so Play-installed builds no longer matched. The picker opens (Google's UI), then the token exchange fails and the error is swallowed.

## Fix

In Play Console > App signing, copy the App signing key certificate SHA-1 and add it to the Android OAuth client in Google Cloud. No rebuild needed. Use `adb logcat` while tapping sign-in to see the real status code (10 = fingerprint mismatch).

## More React Native errors

- [Screen crashes the whole app: Rendered more hooks than during the previous render](https://davidewins.com/errors/rules-of-hooks-usememo-after-early-return)
- [Feed shows an error state for every address: ReferenceError before initialization](https://davidewins.com/errors/tdz-const-used-in-map-before-declaration)
- [Screen crash: Maximum update depth exceeded](https://davidewins.com/errors/maximum-update-depth-competing-effects)
- [Reanimated crash on device: Tried to synchronously call a non-worklet function on the UI thread](https://davidewins.com/errors/worklet-calls-non-worklet-helper)
- [Rows wrapped in <Link asChild> collapse to a tiny height](https://davidewins.com/errors/link-aschild-function-style-dropped)

[Search all errors](https://davidewins.com/errors)
