"DEVELOPER_ERROR" (Code 10) on Google Login -- have tried everything! #27310
-
I can't get Google login working with Supabase for a react-native (Expo) app, at least in production. I have looked at the following:
Here's the steps I've tried and the analysis so far. I actually have been able to get it working on an Expo development build. However, it was not by following the Supabase docs (item 1 above), which says to create an Android OAuth token into Google Cloud with a SHA-1 key and input this into Supabase. It was by following some of the steps in the YT video (item 3 above) which tells you to configure a web client OAuth token into Google Cloud and then input the Client ID and Client Secret into Supabase. This actually works in a debug/development build. However, when I create a production build with this config in the Google Play store, I get the DEVELOPER_ERROR (code 10) error. Alternatively, I have tried following the Supabase instructions (item 1 above) to the exact letter and that doesn't work either, whether in development or release. These are the instructions that say to create an Android OAuth key and provide the SHA-1. Supposedly, the DEVELOPER_ERROR comes when there is a SHA-1 mismatch. There are many many different instructions from different sources on how to get the right SHA-1 key for your Auth key, and I've tried all of them. I have tried:
I have all four of these keys set up as Android OAuth keys in Google Cloud and added them to the Supabase authentication configuration. None of them work either in development or in a production build. I still just get the DEVELOPER_ERROR. I am super stuck on this. I can't seem to find any information on how to move forward. The only way I can get sign-in to work is in a development build using the OAuth web client. I will say, one clear inconsistency I see is that from the react-native-google-signin FAQ (item 2 above) it says pretty clearly that if you are passing a "webClientId" into
Whereas, the Supabase instructions (item 1 above) tell you to create an Android OAuth key and then pass it in as the webClientId parameter. I would imagine that this inconsistency has something to do with the problem, but I'm not sure. Any help would be greatly appreciated. I'm not sure I've seen evidence of anyone successfully getting this set up all way through and could really use some input on it. Thank you so much in advance! |
Beta Was this translation helpful? Give feedback.
Replies: 6 comments 4 replies
-
The error you are facing has nothing to do with Supabase but means that you have a misconfiguration in your Google sign-in setup. Code 10 means that you have the wrong SHA 1 certificate fingerprint set on the client ID. For the production build, make sure you create a Android Client ID with the production SHA 1 certificate fingerprint. |
Beta Was this translation helpful? Give feedback.
-
I am getting the same error. Followed the same debug pattern as OP. What strikes me as suspicious is that the GoogleSignin.configure({
scopes: ['https://www.googleapis.com/auth/drive.readonly'],
webClientId: "xxxx",
}); Where the plugin docs mention that it has to a client ID of android type but the property name seems to suggest it is web type. |
Beta Was this translation helpful? Give feedback.
-
https://github.com/orgs/supabase/discussions/27618 seems to have hit a similar problem |
Beta Was this translation helpful? Give feedback.
-
Lets stick to this post I have same problem and I tried every possible sha-1 keys and the docs not clear |
Beta Was this translation helpful? Give feedback.
-
Any update on this? |
Beta Was this translation helpful? Give feedback.
-
I tried the same thing with all the sha1 that I could find, and there is nothing that does not fit the documentation is terrible for this reason, I used native script and there were no problems with authorization in Google |
Beta Was this translation helpful? Give feedback.
The error you are facing has nothing to do with Supabase but means that you have a misconfiguration in your Google sign-in setup.
Code 10 means that you have the wrong SHA 1 certificate fingerprint set on the client ID. For the production build, make sure you create a Android Client ID with the production SHA 1 certificate fingerprint.