This is my fault because it was my first time publishing an app and I didn’t read all the documentation.
I basically generated an .aab file without actually creating a keystore file. I published the app and nothing warned me that something was wrong about the process.
This is the command I run:
npx react-native build-android --mode=release
Now I need to update the app, but I don’t know what key was used.
I was using expo and I don’t know if react native/expo generated automatically one for me.
Is there a way to reset the key or find the key that was used?
EDIT:
I noticed that on the react-native docs it says the following: Note that –mode release is only available if you’ve set up signing as described above. Meaning I already should have setup the .keystore, but I really didn’t. How’s this possible?
EDIT 2:
I also noticed I have a debug.keystore file in my android/app folder. Is this the keystore that was used? If that’s so, why is the signing not correct? I verified the last time that file was changed and it didn’t change at all since the last release (so if that was the file used it should work, but it doesn’t)
2
Answers
I was wrong, I was just mistaking the process I remember following.
Instead of using the react-native command:
npx react-native build-android --mode=release
I used expo to generate the .aab build and expo generated a keystore for me.
I used the following command to check the sha1 of the first .aab file I generated:
keytool -printcert -jarfile app.aab
Downloaded the keystore using
eas credentials
command as suggested from @Mike and got the sha1 for that keystore file with the following command:keytool -list -v -keystore release.jks
and finally found out the two sha match!
If you followed the Expo process, the Keystore should have been saved on your Expo account. And you shouldn’t have to worry about.
You may type :
Then
Android
>Production
>Keystore
.And depending on what you want to do you might chose :