Abhishek Kumar
Abhishek Kumar

Reputation: 2286

react native Generating Signed APK

I am trying to generate apk for releasing on Google play. I am following these steps https://facebook.github.io/react-native/docs/signed-apk-android.html

Step 1) I ran this command

$ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000 

It asked me question which I answered and got the my-release-key.keystore file generated

I placed the my-release-key.keystore file under the android/app directory in your project folder.

Now it says: Edit the file ~/.gradle/gradle.properties and add the following (replace ***** with the correct keystore password, alias and key password),

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore 
MYAPP_RELEASE_KEY_ALIAS=my-key-alias 
MYAPP_RELEASE_STORE_PASSWORD=***** 
MYAPP_RELEASE_KEY_PASSWORD=*****

Now there was no file previously in /root/.gradle/gradle.properties so i created a new file and added the above 4 constant and there values. Also it tells (replace ***** with the correct keystore password, alias and key password )

This step is most confusing for me, as there is no ***** in alias field. And when I generated my-release-key.keystore file I din't get any alias

So what I should put in place of my-key-alias ?

What is basically my-key-alias?

other than the 2 passwords i entered, the keytool command generated something like this

CO=Dev Abhi, OP=The Awesome Coder, L=The Awesome Coder, M=Delhi, SP=Delhi, M=IN

are the above the alisa?

so do i need to replace things like

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore 
MYAPP_RELEASE_KEY_ALIAS=CO=Dev Abhi, OP=The Awesome Coder, L=The Awesome Coder, M=Delhi, SP=Delhi, M=IN 
MYAPP_RELEASE_STORE_PASSWORD=password1
MYAPP_RELEASE_KEY_PASSWORD=password2

and also Is the real path for ~/.gradle/gradle.properties /root/.gradle/gradle.properties ??

Upvotes: 4

Views: 5809

Answers (2)

sdotson
sdotson

Reputation: 820

Not sure if this will help you, but I was having the exact same issue. My problem ended up being that the file I was editing ~/.gradle/gradle.properties isn't the file in your project directory but the one in the root directory of your operating system. Once I moved the variables to that location, I was able to generate a signed apk!

Upvotes: 3

Abhishek Kumar
Abhishek Kumar

Reputation: 2286

Finally I was able to generate signed apk. So, the thing I was missing -

when you fire the command

$ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

after option -alias we mention any name/term 'my-key-alias'. that's actually what we need to remember and will have to use same term like this in later step

MYAPP_RELEASE_KEY_ALIAS=my-key-alias

rest of the things are as per documentation. But, I still feel that generating signed apk part could have been made more easy to understand bay react native team. If any one face this same issue please get in touch via http://customphpscript.com

Upvotes: 3

Related Questions