# Signing and Publishing

{% stepper %}
{% step %}

### Android (Google Play)

<pre class="language-shellscript" data-overflow="wrap"><code class="lang-shellscript"><strong>#Go JDK in terminal
</strong>cd /Library/Java/JavaVirtualMachines/jdkX.X.X_XXX.jdk/Contents/Home

<strong>#Create keystore and alias for signature
</strong>sudo keytool -genkey -v -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

<strong>#Copy the following part, paste it to ~/.gradle/gradle.properties file or android/gradle.properties file and adjust it according to the keystore
</strong>MYAPP_UPLOAD_STORE_FILE=my-upload-key.keystore
MYAPP_UPLOAD_KEY_ALIAS=my-key-alias
MYAPP_UPLOAD_STORE_PASSWORD=*****
MYAPP_UPLOAD_KEY_PASSWORD=*****

<strong>#Paste the code I showed you into your project's android/app/build.gradle file.
</strong>...
android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
<strong>                storeFile file(MYAPP_UPLOAD_STORE_FILE)
</strong><strong>                storePassword MYAPP_UPLOAD_STORE_PASSWORD
</strong><strong>                keyAlias MYAPP_UPLOAD_KEY_ALIAS
</strong><strong>                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
</strong>            }
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

<strong>#for ABB
</strong>cd android &#x26;&#x26; ./gradlew bundleRelease
#After this process, .aab will be created in android/app/build/outputs/bundle/release/app.aab and is ready to be uploaded to Google Play.

<strong>#for APK
</strong>cd android &#x26;&#x26; ./gradlew app:assembleRelease
#After completing the steps, you will see the APKs in android/app/build/outputs/apk/release
</code></pre>

{% endstep %}

{% step %}

### iOS (App Store)

To publish your app to the App Store, you must first open it in Xcode (the .xcworkspace folder). After making any necessary changes, you can distribute it to App Store Connect by clicking Archive. <mark style="color:red;">**You must open the .xcworkspace file of the iOS project.**</mark>
{% endstep %}
{% endstepper %}
