Skip to main content

FAQ / Troubleshooting

Android

Login does not work when downloading from the Play Store.

See DEVELOPER_ERROR paragraph.

DEVELOPER_ERROR or code: 10 or Developer console is not set up correctly error message

This is always (! absolutely always !) a configuration mismatch between your app and the server-side setup (in Firebase or Google Cloud console).

Firstly, if you are using Firebase Auth, verify Google is enabled as a Sign-in method in Firebase Console (Build -> Authentication -> Sign-in method).

Then: if you have the APK that gives this error, we recommend to run the Configuration Doctor and follow its instructions:

npx @react-native-google-signin/config-doctor

Otherwise, we recommend:

  • Follow the setup guide and perform its steps once again, very carefully.
  • If you're passing webClientId in the configuration object to GoogleSignin.configure(), make sure it's correct and that it is of type web (NOT Android!). You can get your webClientId from Google Developer Console. It is listed under "OAuth 2.0 client IDs".
  • Search the issue tracker for old reports of the error.

Login does not work when using Internal App Sharing.

If you get a DEVELOPER_ERROR when using Internal App Sharing, it is because Google resigns your application with its own key.

See DEVELOPER_ERROR paragraph.

"A non-recoverable sign in failure occurred"

See this comment. Or this SO question.

Changing play-services-auth version

See "Choose Dependency versions" above.

Package name !== application id

When adding a new oauth client, google asks you to add your package name. In some cases your package name is not equal to your application id. Check if your package name in the AndroidManifest.xml is the same as your application/bundle id. Find your application id in the play console or android/app/build.gradle. The format looks like com.yourapp.id.

iOS

On iOS the app crashes when tapping Sign In button

Along with "Your app is missing support for the following URL schemes" error in console.

Your Url Schemes configuration is incorrect.

If you use Expo, verify that the config plugin is configured correctly.

In vanilla React Native projects, add URL type like this.