# User Guide

## Before you publish your first app

### Required Assets

We recommend you compile the following assets before embarking on the publishing journey.

* **App Information**
  * \[Text] App Name\
    To be shown in the Play Store.
  * \[Text] A Short Description of your app
  * \[Text] A Full Description of your app
* **App Icon**
  * \[Image] 512 x 512 pixels
  * Up to 1MB in size
* **Feature Graphic**
  * \[Image] 1024 x 500 pixels
  * Up to 1MB in size
* **Phone Screenshots**
  * \[Images] 16:9 or 9:16 aspect ratio
  * Each side between 320 and 3,840 pixels
  * Up to 8MB in size

## App Settings

To publish your app on Android, you'll need to add of access the following in your Thunkable project's [App Settings](https://docs.thunkable.com/settings/project-settings):

* App Name&#x20;
* Icon&#x20;
* Package Name (referred to as App (Bundle) ID in Thunkable)&#x20;
* Version Name & Version Code<br>

### Package Name

Every new Thunkable project is automatically given a unique App (Bundle) ID. For the purposes of publishing to the Play Store, this is refered to as your app's **package name**. &#x20;

To locate your package name:

1. Open your Thunkable project.
2. Navigate to the **Design tab**.
3. Click the **Settings** gear icon in the sidebar.
4. Copy the content of the **App (Bundle) ID** field. This is your package name. \ <br>

   <div align="left"><figure><img src="https://1223006790-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LAn5scXl2uqUJUOqkJo-84897653%2Fuploads%2Fx6wC9lqEbuLbEdhJJvHj%2FApp%20Settings%20%3E%20App%20Bundle%20ID.png?alt=media&#x26;token=2ef1721e-c307-4f1d-ba86-04ee12ef6274" alt="" width="351"><figcaption></figcaption></figure></div>

You'll notice that Thunkable adheres to the following naming convention to avoid conflicts with other apps: com.yourDomainName.yourAppName. It is all lower case letters, none of the segments begin with a number, and there are no characteres with accents.

## Each time you create a new app

### Set your Android Version

Google Play requires each new version of your app to have a unique and sequentially higher Version Name and Version Code. You can let Thunkable auto-increment (or automatically increase) the version data for you.

<div align="left"><figure><img src="https://1223006790-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LAn5scXl2uqUJUOqkJo-84897653%2Fuploads%2F8qvJ7zT1RzwnVaHc4QAY%2FApp%20Settings%20%3E%20Android%20Publishing%20Version.png?alt=media&#x26;token=a2c1e27e-106d-4c39-9b45-4ba616ec83cf" alt="" width="352"><figcaption></figcaption></figure></div>

### Download your Android App Bundle (AAB) file

The Apple and Android publishing processes are quite different. To publish with Apple, you complete the process in the Thunkable publishing wizard and the app file is sent directly to your Apple TestFlight. To publish with Android, you receive an email from Thunkable with your app's AAB file, which you download and then upload to the Google Play Store.

{% hint style="warning" %}
An AAB file cannot be installed on an Android device. If you want to download and install your project, please read the [Download](https://docs.thunkable.com/settings/manage-your-projects/download#download-android-app) docs.
{% endhint %}

To download your Android App Bundle (AAB) file:

1. Within your Thunkable project, click the **Publish and Download** icon.
2. Select **Publish Android** from the drop-down menu.\
   \
   ![](https://1223006790-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LAn5scXl2uqUJUOqkJo-84897653%2Fuploads%2FSeZpMqw5XOqJfE17VEw3%2FPublish%20Android.png?alt=media\&token=eeb09e73-ab40-4fa7-bae5-210559627bb9)<br>
3. A publishing modal is provided to guide you through the publication process.&#x20;
4. Enter the **email address** you want the app download link sent to.&#x20;
5. Click **Send**. <br>

   <div align="left"><figure><img src="https://1223006790-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LAn5scXl2uqUJUOqkJo-84897653%2Fuploads%2Fwzv93zwB5xvvpvyfjSh1%2FAndroid%20Publish%20-%20email.png?alt=media&#x26;token=f28547c4-55bb-4d14-97d3-12cfd8914df9" alt="" width="563"><figcaption></figcaption></figure></div>
6. In approximately 30 minutes, you will receive your AAB file to the email address you provided.&#x20;
7. When you receive the email, download the AAB file to your computer. Note: If you use Google Chrome, your browser settings may prevent you from downloading your AAB file. Simply open the email in Firefox or Safari to download your AAB file.

#### Create a new app on the Google Play Console <a href="#create-a-new-app-on-the-google-play-console" id="create-a-new-app-on-the-google-play-console"></a>

1. Sign-in to your [**Google Play Console**](https://play.google.com/console/) account.
2. Click **Create app** in the upper right.
3. Complete the requested **app details** fields. Note: The App Name is how your app will appear on Google Play.
4. Complete the required **declarations**.
5. Click **Create app**.

### Manage your app signing

![](https://1223006790-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LAn5scXl2uqUJUOqkJo%2F-MbKl54vHyH1-Kw3fqBM%2F-MbKvhB85b_I-diO0Ku-%2FPrepare-1.png?alt=media\&token=a6647069-a2fc-4a7e-a04d-893d660075fb)

Google will offer to protect your app signing key. You can click **Continue** to allow this to proceed. You will only be asked this the first time you publish a release.

If you don't want Google to manage your App Signing, you can do so yourself. This is not necessary.

#### In Thunkable: <a href="#in-thunkable" id="in-thunkable"></a>

**Download your Keystore Zip**

You will need to download your Keystore Zip. This is a compressed version of your app's Android Keystore.

You can download this from your project settings under **Keystore Zip**:

![](https://docs.thunkable.com/~gitbook/image?url=https%3A%2F%2F1223006790-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-legacy-files%2Fo%2Fassets%252F-LAn5scXl2uqUJUOqkJo%252F-MbGTw2v596ga_S7c4_H%252F-MbGXHkM_KX1WCJzICkg%252Ftop_keystore.png%3Falt%3Dmedia%26token%3Dda79ab99-26e9-4baf-9411-18f201050b70\&width=768\&dpr=4\&quality=100\&sign=d2ed3ac8\&sv=1)

We recommend creating a new folder on your computer. Download your AAB file and your Keystore Zip to this new folder. That way, the correct AAB file and Keystore Zip will be together.

#### In the Play Store: <a href="#in-the-play-store" id="in-the-play-store"></a>

Click **Manage App Signing:**

![](https://docs.thunkable.com/~gitbook/image?url=https%3A%2F%2F1223006790-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-legacy-files%2Fo%2Fassets%252F-LAn5scXl2uqUJUOqkJo%252F-MbMBigBZ--CNDYDRfal%252F-MbMCjvBoOin_vznPs_b%252Fmanage%2520app%2520signing.png%3Falt%3Dmedia%26token%3D03f8da5d-6602-4ff0-81c6-36964ef83d3b\&width=768\&dpr=4\&quality=100\&sign=5cc1763e\&sv=1)

Click **Export and upload a key from Java keystore:**

![](https://docs.thunkable.com/~gitbook/image?url=https%3A%2F%2F1223006790-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-legacy-files%2Fo%2Fassets%252F-LAn5scXl2uqUJUOqkJo%252F-MbMBigBZ--CNDYDRfal%252F-MbMCtWfhW0AdijZvp0t%252FExport.png%3Falt%3Dmedia%26token%3D3e4b8323-bee2-4e39-9c1b-925c60e50550\&width=768\&dpr=4\&quality=100\&sign=75196218\&sv=1)

You can skip straight to **Step 3: Upload generated ZIP** and Upload the [Keystore ZIP you downloaded from your project settings.](https://docs.thunkable.com/publishing-apps/publish-to-play-store-android#download-your-bundle-key-zip)

Click **Continue.**

Continue following the instructions in this document from [Create and Publish a Release](#create-and-publish-a-release).

#### App Dashboard <a href="#app-dashboard" id="app-dashboard"></a>

While you're getting set up, the Google Play Console Dashboard shows you what you need to do to get your app up and running. This includes recommendations on how to manage, test, and promote your app. Once you've completed a task, return to the Google Play Console Dashboard to explore what else you need can do.

We'll focus on the the following steps:

* Set up your app
* Publish Your app on Google Play

#### Set up your app <a href="#set-up-your-app" id="set-up-your-app"></a>

In this section, you'll share with Google the content of your app, and manage how it is organized and presented on Google Play.

1. Click **View tasks** in the Set up your app section to see the tasks you must complete.
2. Click on a task.
3. Complete the required fields.
4. Click **Save**.
5. Click **Dashboard** above the task name in the upper left.
6. Repeat with the remaining tasks in the list.

Apps that request access to sensitive permissions or data (as defined in the [user data policies](https://play.google.com/about/privacy-security-deception/user-data/)) are required by the Google Play Store to include a privacy policy. All apps made on Thunkable request access to sensitive permissions or data, which means you will need to provide a privacy policy.

#### Main store listing <a href="#main-store-listing" id="main-store-listing"></a>

1. Click **Main store listing** under the Grow heading in the sidebar.
2. Complete the required fields and upload the required assets. See here for additional guidance: [Add preview assets to showcase your app](https://support.google.com/googleplay/android-developer/answer/9866151).
3. Click **Save**.

#### Create and publish a release <a href="#create-and-publish-a-release" id="create-and-publish-a-release"></a>

1. Return to the Google Play Console **Dashboard**.
2. Click **View tasks** in the Create and publish a release section to see the tasks you must complete.
3. Click the **Select countries** task.
4. Identify the countries you want your app to be available in.
5. Click **Create a new release**.
6. Upload the AAB file into the **App bundles** section. Instructions for downloading your AAB are available here: [#download-your-android-app-bundle-aab-file](#download-your-android-app-bundle-aab-file "mention")
7. Add **Release notes** for this update.
8. Click **Next**.

{% hint style="info" %}
You may see some Accessibility, Performance, Stability, Security, and trust warnings on the Google Play Store, Pre-launch report. These notifications from Google about your app are simply some warnings, not errors--there is nothing wrong with your app and it should still appear on the Play Store.
{% endhint %}

## To update your app

## **Updating an existing app on the Play Store**

1. In your Google Play Console, click on the **Releases** tab.
2. Click the **Create New Release** Button
3. Upload the AAB file into the **App bundles** section. Instructions for downloading your AAB are available here: [Download your Android App Bundle (AAB) file](https://docs.thunkable.com/publish-to-play-store-android#create-and-publish-a-release).
4. Add a **Release name** so you can identify this release. It isn't shown to users on Google Play.
5. Add **Release notes**. Let users know what's in your release.
6. Click **Next**.

If you are updating an existing app on the Google Play Store, your Thunkable project will need to have:

* the same [package name](https://docs.thunkable.com/publishing/publish-to-play-store-android/..#the-package-name) as the published app
* an incremented [version number](https://docs.thunkable.com/publishing/publish-to-play-store-android/..#build-and-version-number) (version number is higher than the version number of your published app)
* the same [keystore](https://docs.thunkable.com/publishing/publish-to-play-store-android/..#the-keystore-private-key) as the published app

You will not need to change any app signing settings when updating a published app.
