How do I set up and deploy a Unity application to Google Play using Play app signing and app bundles?


Using app bundles and play app signing is currently the way recommended by google to deploy new apps on google Play. And starting from August 2021 new apps will be strong-armed into using these formats.

How do I set this up in Unity, and how do I configure the app in Google Play?


I haven’t gotten 2019.4 app bundle builds to sucessfully upload to play console, so it’s probably a good idea to upgrade to the 2020.3 LTS before you start (as that’s what finally worked for me.

Configuring Google Play App signing

First create a new app in Play Console, give it a name, accept terms etc.

Then, click Internal testing on the menu on the left side, and create a new internal release.

In the first question, click Change App Signing key, Use a different key and then select the third option, where you can upload your existing key (and an optional step with to add an upload key) to Google Play.

Don't follow these instructions

Now, don’t just follow the instructions listed on Google Play, as you will end up with an upload key store that Unity doesn’t know how to deal with.

Instead, using Unity, we will create two key stores and two keys. The first one is the app signing key, which you will only need to see once when uploading it to Google Play, then Google will take care of it and use it to do the final signing of your apps after you’ve uploaded your app bundles.

Go to Player settingsPublishing SettingsKeystore ManagerCreate new in dedicated location

open the keystore manager in unity

You don’t need to fill out everything. Just the password, key alias and key password. It doesn’t matter what you call the key. Don’t configure Unity to use this key just yet (we’ll create another key and keystore for Unity to use shortly).

Create a app key and key store

Follow instructions 1.-3. on Google Play to upload this new key using the pepk tool.

Then, you need to create an upload key and keystore. Unity will use this key to sign your app bundles. Again, do NOT use the instructions on Google Play to create this key, instead use the Unity UI to create another key store that plays nice with Unity.

The passwords and alias could be whatever you want I named my key uploadkey, but make sure to keep the key store and passwords somewhere safe, you will need these later, or you’ll have to create new keys and talk to Google support to reset it.

When prompted, click yes to configure your project to use this new key.

use the new upload key for signing your project

When you’ve created the key store and key export its public key to the .pem format…

keytool -export -rfc -keystore upload.keystore -alias uploadkey -file upload_certificate.pem

…and upload it to Google Play.

Click Update and then Continue in Play Console.

Play store should now be ready to accept your .aab files.

Configuring Unity

Hopefully, your project is now set up to sign using the upload key you just created.

Make sure to set the package name yourself by going to Player SettingsOther Settings Override Default Package Name . Type in something appropriate in lower-case characters only, the default package name has uppercase characters, which I think is just begging for problems. You can’t change this later, or you’ll have to create a new play store entry, so make sure it’s something that’s acceptable for customers to see, i.e. com.yourcompany.gamename.

package name

It’s also a good idea to enable 64-bit builds in player settings otherwise, google play will complain later. Switch Scripting Backend to IL2CPP and then tick ARM64:

enable 64-bit builds

Tick Build App Bundle in Build Settings.

build app bundle in build settings

Click Build and build your .aab file

Then upload it to the Google Play Console:

upload to google play

If you’re lucky, everything went smoothly, and you can click save and be ready to start testing your app.

If not, you may get helpful error messages, in which case just follow them, if not and they’re really non-descriptive (like “Couldn’t upload. Try again.”), then try temporarily uploading an .apk instead, as that sometimes gives better error messages, then switch back to .aab when you’ve solved the issue.

Answered By – bobbaluba

Leave a Comment