2

I've enabled the Google SignIn on Firebase and I also added the SHA-1 key. My App compiles fine but when I press the Login button and select a Google account for logging in I get the Possible Unhandled Promise Rejection (id: 0): Error: DEVELOPER_ERROR
When I tried using the anonymous sign in I didn't get any errors. I'm on Android and I have the latest versions for all modules. Here is the full error code:

[Fri Oct 23 2020 18:08:26.174]  WARN     Possible Unhandled Promise Rejection (id: 0):
Error: DEVELOPER_ERROR
promiseMethodWrapper@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2242:45
signIn$@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:102709:72
tryCatch@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:24976:23
invoke@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:25149:32
tryCatch@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:24976:23
invoke@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:25049:30
http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:25059:21
tryCallOne@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:27056:16
http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:27157:27
_callTimer@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:30596:17
_callImmediatesPass@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:30635:17
callImmediates@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:30852:33
__callImmediates@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2736:35
http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2522:34
__guard@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2719:15
flushedQueue@http://localhost:8081/index.bundle?platform=android&dev=true&minify=false:2521:21
flushedQueue@[native code]
callFunctionReturnFlushedQueue@[native code]

This is my App.js:

import React, {useState, useEffect} from 'react';
import {View, Text, Button} from 'react-native';

import auth from '@react-native-firebase/auth';
import firebase from '@react-native-firebase/app';
import {GoogleSignin} from '@react-native-community/google-signin';

const firebaseConfig = {
  apiKey: 'xxxx',
  appId: 'xxxx',
  databaseURL: 'https://xxxx.firebaseio.com',
  messagingSenderId: 'xxxx',
  projectId: 'xxxx',
  storageBucket: 'xxxx.appspot.com',
};

if (!firebase.apps.length) {
  firebase.initializeApp(firebaseConfig);
}

const App = () => {
  useEffect(() => {
    // initialize the Google SDK
    GoogleSignin.configure({
      scopes: ['email'],
      webClientId:
        'xxxx.apps.googleusercontent.com',
      offlineAccess: true,
    });
  }, []);

  const googleLogin = async () => {
    // Get the users ID token

    const {idToken} = await GoogleSignin.signIn();
    // Create a Google credential with the token
    const googleCredential = auth.GoogleAuthProvider.credential(idToken);

    // Sign-in the user with the credential
    return auth().signInWithCredential(googleCredential);
  };

  return (
    <View>
      <Button title="Login" onPress={() => googleLogin()}></Button>
    </View>
  );
};

export default App;
Andrej
  • 2,188
  • 1
  • 6
  • 20
  • How did you generate your SHA-1? A common error is generating SHA-1 of incorrect key. – AsifM Oct 23 '20 at 16:40
  • Hi thanks for the response. I did ```cd android``` and then ```gradlew signingReport```. – Andrej Oct 23 '20 at 16:42
  • Did I do it wrong? – Andrej Oct 23 '20 at 17:45
  • No this should be good. Look at the answers of a similar question- https://stackoverflow.com/questions/37273145/error-statusstatuscode-developer-error-resolution-null – AsifM Oct 23 '20 at 21:37
  • I looked at the answer and all they are talking about is adding the SHA-1 key which I already did. Is there any way I can generate a new debug.keystore file? – Andrej Oct 23 '20 at 22:53
  • I just tried to use sign in with phone instead and I'm getting the following error: ```rror: [auth/app-not-authorized] This app is not authorized to use Firebase Authentication. Please verify that the correct package name and SHA-1 are configured in the Firebase Console. [ App validation failed ] NativeFirebaseError: [auth/app-not-authorized] This app is not authorized to use Firebase Authentication. Please verify that the correct package name and SHA-1 are configured in the Firebase Console. [ App validation failed ]```. Maybe this can help. – Andrej Oct 23 '20 at 23:22

2 Answers2

2

Your SHA-1 key in firebase is not match your with your app's SHA-1 key. To get your correct SHA-1 key follow the command in console with your application path :

keytool -list -v -keystore ./android/app/debug.keystore -alias androiddebugkey -storepass android -keypass android

Farhan
  • 1,316
  • 13
  • 22
-1

The problem is SHA-1 key. when we use gradlew signingReport command there is created many type of varient Signin reports. So use SHA-1 key related with Varient : relese.

ruwanmadhusanka
  • 713
  • 1
  • 7
  • 14
  • I wrote that I added the SHA-1 key on the top of the question. It didn't work. I moved on to Flutter, and I had 0 problems in development, it just works. – Andrej Mar 06 '21 at 20:19
  • but I mean there are varients of SHA keys. So you should add the correct one. Best regards !. – ruwanmadhusanka Mar 07 '21 at 03:31