react-native-google-signin/google-signin

Google Signin not working after release on play store - Error: DEVELOPER_ERROR

Closed this issue ยท 16 comments

Here is the explaination of my issue

  • I am working on react native firebase, I am Oauth google sign with firebase auth

  • I can signin with google in debug and release apk. But not with the app download from playstore.

  • I have implement error log to identify what happen in production by using realtime database.

  • It throws a error message Error: DEVELOPER_ERROR only on Production

Environment

  • react-native version - 0.73.6
  • @react-native-google-signin/google-signin version - ^10.1.2

Here is my Auth function

function* SignInGoogle(action) {
  try {
   // Check if your device supports Gogle Play
   GoogleSignin.configure({ 
    webClientId: '<I use my webclient ID>'
   })
  yield GoogleSignin.hasPlayServices({ showPlayServicesUpdateDialog: true })
  const { idToken } = yield GoogleSignin.signIn()
  const googleCredential = auth.GoogleAuthProvider.credential(idToken)
  const users = yield firebase.auth().signInWithCredential(googleCredential).then(users => users)
  const userData = users.user
  const additionalUserInfo = users.additionalUserInfo
  const isNewUser = additionalUserInfo.isNewUser
  if(!isNewUser) {
    const data = yield call(getDoc, 'users', userData.uid)
    if(data) {
      yield put(loginUserSuccess(data, userData.uid))
    } else {
      const name = userData.displayName !== null ? userData.displayName : ''
      const phone = userData.phoneNumber !== null ? userData.phoneNumber : ''
      const userd = {
        email: userData.email,
        name,
        uid: userData.uid,
        phone,
        signInMode:'signInWithGoogle'
      }
      const dd = yield call(setDoc, 'users', userData.uid, userd)
      yield put(signUpSuccess(userd, 'currentUser.accessToken'))
    }
  } else {
    const name = userData.displayName !== null ? userData.displayName : ''
    const phone = userData.phoneNumber !== null ? userData.phoneNumber : ''
    const userd = {
      email: userData.email,
      name,
      uid: userData.uid,
      phone,
      signInMode:'signInWithGoogle'
    }
    const dd = yield call(setDoc, 'users', userData.uid, userd)
    yield put(signUpSuccess(userd, 'currentUser.accessToken'))
  }
    signUpFailure('error')
  } catch (e) {
    const updates = {}
    const time = moment().unix() * 1000
    const refId = 'error_log'
    updates[time] = {
      time,
      error_msg: `${e}`,
    }
    update(getDatabase(refId), updates)
    signUpFailure(e)
  }
}

Does this help?
#1252

Does this help? #1252

Thanks, But it does'nt help. I have already done this.

Also I'm facing this issue and waiting solution.

Does this help? #1252

I have the same problem!
I also done this, But it doesn't help.

Did anyone find the solution?

Did anyone find the solution?

No, I tired of research on this issue on past two weeks.

Did anyone find the solution?

Same issue,
Doesn't Google Console change our SHA-1 when we upload the app with .aab format?

SOLUTION:

As I mentioned a question in the above message, I searched a little about Google Signing and realized that the Google App Sign section in the GooglePlay dashboard, changes the SHA-1 fingerprint after uploading.

The only thing you need to do is :
1 - Go to the GooglePlay Dashboard
2 - Setup > App Signing
3 - Copy the SHA-1 Certificate
4 - Go to the Firebase > Project Settings
5 - Press "Add a new fingerprint" button inside of the Android project
6 - Past the new SHA-1 there and save it.

Done.

I'm also facing the same issue. Production release apk is working fine, but getting DEVELOPER_ERROR after release on playstore. I already have SHA-1 in place

This worked for me. @mohammad-goldast @Ganeshguru5
play console -> production -> app bundles -> downloads -> download signed universal apk
Run below command
keytool -printcert -jarfile version_number.apk
copy the sha1 to firebase

I did everything, copy SHA-1 to firebase, create Android Credentials on Google Cloud
Still not working, so sad

Hello and thanks for asking,
please refer to the guide https://react-native-google-signin.github.io/docs/troubleshooting or get in touch with me if you're stuck (as a paid service, see at the top of the linked page)
Thank you ๐Ÿ™‚

We were not expecting this answer!

We were not expecting this answer!

I beg your pardon?

lngdao commented

This worked for me. @mohammad-goldast @Ganeshguru5 play console -> production -> app bundles -> downloads -> download signed universal apk Run below command keytool -printcert -jarfile version_number.apk copy the sha1 to firebase

This worked for me. Thanks