How to Publish an App to Google Play Store


Android necessitates that all applications be carefully endorsed with an authentication before they can be introduced. To convey your Android application using the Google Play store it should be endorsed with a delivery key that should be utilized for all future updates. Starting around 2017 it is workable for Google Play to oversee marking discharges naturally because of App Signing by Google Play's usefulness. Notwithstanding, before your application parallel is transferred to Google Play it should be endorsed with a transfer key. The Signing Your Applications page on Android Developers documentation depicts the subject exhaustively. This aide covers the interaction in a word, just as records the means needed to bundle the JavaScript pack.


Producing a transfer key

You can produce a private marking key utilizing a key tool.


On Windows,

keytool should be run from C:\Program Files\Java


This order prompts you for passwords for the Keystore and key and the Distinguished Name fields for your key. It then, at that point, creates the Keystore as a document called my-transfer key. Keystore.

The Keystore contains a solitary key, legitimate for 10000 days. The nom de plume is a name that you will utilize some other time when marking your application, so make sure to observe the false name.


On Mac, assuming you don't know where your JDK container organizer is, play out the accompanying order to find it:


It will yield the registry of the JDK, which will look something like this:


Explore that catalog by utilizing the order album/your/JDK/way and utilize the keytool order with Sudo authorization as displayed underneath.


Setting up Gradle variables

1.     Place the my-transfer key. key store tif file under the android/application index in your undertaking envelope.

2.     Edit the record ~/.gradle/ or android/, and add the accompanying (supplant ***** with the right Keystore secret word, pseudonym, and key secret key),


These will be worldwide Gradle factors, which we can later use in our Gradle config to sign our application.

Adding marking config to your application's Gradle config

The last design step that should be done is to arrange discharge works to be marked utilizing the transfer key. Alter the document android/application/build. Gradle in your undertaking organizer, and add the marking config,


Creating the delivery AAB

Run the accompanying in a terminal:


               how to open swf file extension


Gradle's bundle release will package all the JavaScript expected to run your application into the AAB (Android App Bundle). If you want to change how the JavaScript pack, as well as drawable assets, are packaged (for example on the off chance that you changed the default record/envelope names or the overall construction of the task), examine android/application/build.Gradle to perceive how you can refresh it to mirror these changes.


The produced AAB can be found under


 and is fit to be transferred to Google Play.


All together for Google Play to acknowledge AAB design the App Signing by Google Play should be arranged for your application on the Google Play Console. In case you are refreshing a current application that doesn't utilize App Signing by Google Play, kindly check our movement area to figure out how to play out that arrangement change.


Testing the delivery work of your app

Before transferring the delivery work to the Play Store, ensure you test it completely. First, uninstall any past rendition of the application you as of now have introduced. Introduce it on the gadget utilizing the accompanying order in the task root:

You can end any running bundler examples since all your structure and JavaScript code are packaged in the APK's resources.


Distributing to other stores

Naturally, the produced APK has the local code for both x86 and ARMv7a CPU structures. This makes it simpler to share APKs that sudden spike in demand for practically all Android gadgets. In any case, this has the drawback that there will be some unused local code on any gadget, prompting pointlessly greater APKs.


You can make an APK for every CPU by changing the accompanying line in android/application/build. Gradle:


- ndk {-abiFilters "armeabi-v7a", "x86"- }-def enableSeparateBuildPerCPUArchitecture = false+ def enableSeparateBuildPerCPUArchitecture = valid


Transfer both these documents to business sectors that support gadgets focusing on, like Google Play and Amazon AppStore, and the clients will consequently get the proper APK. Assuming you need to transfer to different business sectors, like APKFiles, which don't uphold numerous APKs for a solitary application, change the accompanying line also to make the default all-inclusive APK with parallels for the two CPUs.


- universalApk bogus/If valid, likewise produce a widespread APK+ universalApk valid/If valid, additionally create an all-inclusive APK


Empowering Proguard to lessen the size of the APK

Proguard is an apparatus that can somewhat diminish the size of the APK.


To empower Proguard, alter android/application/build.gradle:


/** * Run Proguard to contract the Java bytecode in discharge fabricates. */def enableProguardInReleaseBuilds = valid


Moving old Android React Native applications to utilize App Signing by Google Play


In case you are relocating from the past form of React Native possibilities are your application doesn't utilize App Signing by Google Play include xls file. We prescribe you empower that to exploit from things like programmed application parting. To relocate from the old method of marking you want to begin by creating a new transfer key and afterward supplanting discharge marking config in android/application/build. Gradle to utilize the transfer key rather than the delivery one (see an area about adding marking config to Gradle). Whenever that is done you ought to adhere to the directions from the Google Play Help site to send your unique delivery key to Google Play.


  1. Superb post, Thanks for sharing with us.

  2. Excellent information, Can you share more data with us so i can use this into my project.


Post a Comment