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,743
  • 2
  • 11
  • 28
  • 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

4 Answers4

4

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,445
  • 16
  • 24
0

This is the case for 2 reasons:

  1. Missing SHA-1 key, this already has many answers for it
  2. Your SHA-1 key is being used in many projects, and they are conflicting with each other. Try removing your SHA-1 key and then adding them back in, then download the json file and run it again.
0

my error was I took the wrong variant. notice there are like 6 keys , 3 similar and other 3 also similar. after adding all variants to firebase sha-1 it worked.

in YourProject/android
run:
./gradlew :app:signingReport

if you run ./gradlew signingReport it prints many signning reports, you may have taken accidently not your sha-1 id

see there is

Task :react-native-firebase_auth:signingReport

but you probably need

Task :app:signingReport

it prints like:

> Task :app:signingReport
Variant: debug
Config: debug
Store: C:\Users\user\Documents\projects\chatgptfriends\android\app\debug.keystore
Alias: androiddebugkey
MD5: 20:F4:61:48...
SHA1: 5E:8F:16:06:...
SHA-256: FA:C6:17:45:DC:09:03:78:...
Valid until: Wednesday, 1 May 2052
----------
Variant: release
Config: debug
Store: C:\Users\user\Documents\projects\chatgptfriends\android\app\debug.keystore
Alias: androiddebugkey
MD5: 20:F4:61:48:...
SHA1: 5E:8F:16:06:...
SHA-256: FA:C6:17:45:DC:...
Valid until: Wednesday, 1 May 2052
----------
Variant: debugAndroidTest
Config: debug
Store: C:\Users\user\Documents\projects\chatgptfriends\android\app\debug.keystore
Alias: androiddebugkey
MD5: 20:F4:61:48:...
SHA1: 5E:8F:16:06:...
SHA-256: FA:C6:17:45:DC:...
Valid until: Wednesday, 1 May 2052
----------

> Task :react-native-firebase_app:signingReport
Variant: debugAndroidTest
Config: debug
Store: C:\Users\user\.android\debug.keystore
Alias: AndroidDebugKey
MD5: D1:EA:B0:E0...
SHA1: 0B:76:BB:09...
SHA-256: 60:FE:E2:...
Valid until: Monday, 27 January 2053
----------

> Task :react-native-firebase_auth:signingReport
Variant: debugAndroidTest
Config: debug
Store: C:\Users\user\.android\debug.keystore
Alias: AndroidDebugKey
MD5: D1:EA:B0:E0...
SHA1: 0B:76:BB:09...
SHA-256: 60:FE:E2:...
Valid until: Monday, 27 January 2053
----------

> Task :react-native-firebase_firestore:signingReport
Variant: debugAndroidTest
Config: debug
Store: C:\Users\user\.android\debug.keystore
Alias: AndroidDebugKey
MD5: D1:EA:B0:E0...
SHA1: 0B:76:BB:09...
SHA-256: 60:FE:E2:...
Valid until: Monday, 27 January 2053
----------

> Task :react-native-google-signin_google-signin:signingReport
Variant: debugAndroidTest
Config: debug
Store: C:\Users\user\.android\debug.keystore
Alias: AndroidDebugKey
MD5: D1:EA:B0:E0...
SHA1: 0B:76:BB:09...
SHA-256: 60:FE:E2:...
Valid until: Monday, 27 January 2053
----------
Shimon Doodkin
  • 4,310
  • 34
  • 37
-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
  • 851
  • 2
  • 8
  • 15
  • 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