Important |
---|
The Unity Distribution Portal (UDP) is shutting down on February 17th, 2025. Access to the UDP Web console and services will be permanently deactivated on this date. To download your keystores and instructions on how to republish your games directly to app stores, visit the UDP overview page. If you have any questions about your account, submit a ticket with Unity Customer Support. |
Once you’ve built your game in the Unity Editor, the UDP console needs to repack it with each store’s SDK before you can publish your game to the supported stores.
To upload your build to the UDP Console, follow these steps.
Note: The UDP console only accepts APKsThe Android Package format output by Unity. An APK is automatically deployed to your device when you select File > Build & Run. More info
See in Glossary or AABs that have a UDP implementation.
You can also deploy your game to the UDP console in the following ways:
You can only use the UDP API to upload binary files for the draft version of your game. If there is no draft version of your game, UDP creates one based on the latest version of your game. If the upload process is successful, UDP returns the “upload success” message with status code 200. If the upload process is unsuccessful, UDP returns an error message with a non–2xx status code.
You can upload either:
You can only upload one binary file at a time; you can’t specify multiple binary files for a command. If you upload the same type of binary file multiple times, the most recent file overrides the previous one.
To use the UDP API, you need:
To upload binary files to the UDP console using the UDP API, use the HTTP POST method, and set the Content-Type
to multipart/form-data
. For information on the supported API parameters, see UDP API.
To upload an APK file, specify the path to your APK file in the POST method with the form key uploadFile
.
Example:
$ curl -XPOST -F 'whatsNew="example"' -F 'useGoogleService=false' -F 'uploadFile=@/path/to/your/APK/example.apk'
https://distribute.dashboard.unity.com/developer/api/upload/12369536319506/1d1a4cxq774MzPKwsiHgXA?token=NWQxMWIzZmYyNjk0Njc2NGYwMDU0ZTA3ZTk3YjA2ZDA=
To upload an AAB file, specify the path to your AAB file with the form key uploadFile
.
Example:
$ curl -XPOST -F 'whatsNew="example"' -F 'useGoogleService=true -F 'uploadFile=@/path/to/your/AAB/example.aab'
https://distribute.dashboard.unity.com/developer/api/upload/12369536319506/1d1a4cxq774MzPKwsiHgXA?token=NWQxMWIzZmYyNjk0Njc2NGYwMDU0ZTA3ZTk3YjA2ZDA=
To upload an OBB file:
uploadFile
.obbType
to mainObb
or patchObb
.Example main OBB file upload:
$ curl -XPOST -F 'uploadFile=@/path/to/your/OBB/exampleMain.obb'
https://distribute.dashboard.unity.com/developer/api/upload/12369536319506/1d1a4cxq774MzPKwsiHgXA?token=NWQxMWIzZmYyNjk0Njc2NGYwMDU0ZTA3ZTk3YjA2ZDA=&obbType=mainObb
Example patch OBB file upload:
$ curl -XPOST -F 'uploadFile=@/path/to/your/OBB/examplePatch.obb'
https://distribute.dashboard.unity.com/developer/api/upload/12369536319506/1d1a4cxq774MzPKwsiHgXA?token=NWQxMWIzZmYyNjk0Njc2NGYwMDU0ZTA3ZTk3YjA2ZDA=&obbType=patchObb
Before you can publish your game to a store on the UDP console, follow these steps:
You can then proceed to publish your game.
To be able to publish your game to stores, you need to release it. When you have saved your revision draft and are ready to publish it:
Revisions are released versions of your game. This lets you store a record of changes to your app store submissions throughout time.
A revision’s key components are:
If you change one of these elements, your store submission changes, and you must create a new revision. The revision system is incremental (+1 each time) and is managed by UDP. You cannot create custom revision numbers. Use revision notes and labels when you release a new revision to help you keep track of revisions.
Note: If a draft revision has been saved on the UDP console but not released, you can’t push changes from the Editor that would increment the revision number.
To overwrite an existing revision draft.
Use the Publish panel to publish your game to stores. You can only publish released revisions to stores.
Follow these steps for each of the stores you want to submit your game to:
For help publishing to specific stores, see Documentation > Partner Store Guides in the UDP console.
When you’ve published your game, you can monitor its performance in the Reporting Dashboard.
To be able to publish your game to stores, you need to have an account with them.
To create an account with a store:
Once you’ve signed up with the store, you can register your game with it.
Note: Only the Organization Owner and Manager can sign up with a store. See Organization-related permissions for more details.
Store accounts are per Unity Organization. Any games you publish via UDP are attached to the Organization from which you published. If you access the UDP console under a different Organization, you need to sign up again and create a different account. For more information on how to sign up to individual stores, see Documentation > Partner Store Guides in the UDP console.
When you have signed up to a store, you can register your game with the store.
When your game is registered with the store, you can no longer change the package name for that store.
If you use UDP to generate the App signing private key, UDP generates a store-specific key to sign the repacked build. This may also affect third-party services integrated in your game. The store-specific certificate is available in the Advanced section when your game has been repacked.
Signing your repacked build in this way makes your game more vulnerable to Google Play Protect warnings.
In the Publish tab, select the target step for the given store.
UDP creates a separate build for each store that you publish to, containing only the store-specific SDK that’s required. Each store-specific build is signed with a UDP certificate that is specific to your game and to each store. You can find and retrieve the certificate from the Advanced section of each store.
Additionally, UDP adds a store-specific suffix to the package name, if applicable. If this is required, the UDP console will display this information during the Register step.
Note: If required, in the Publish page, you can configure:
You can only submit the latest released revision to a store. If you intend to submit different revisions to different stores, Unity recommends you use the release labels and notes to identify your revisions.
Example: You want to submit one revision for StoreA and another revision for StoresBCD.
If you’ve previously submitted your game to a store, you can repack the game without uploading a new IAP catalog. This uses the most recently submitted IAP catalog.
Before you submit your repacked build to stores, download the APK from the Status tab and test it to ensure your in-app purchases work as expected in the store’s commercial environment.
Note: Changes you’ve made in the Advanced settings for a store are not overridden if you submit a new version of your game.
To publish your game to the UDP stores, you need to create a company information profile. Stores display this information in the “About the developer” section of your game’s listing on their app store. You only need to do this once.
Once you have completed all the above steps, publish your game.
Only the latest released revision of your game is taken through the target steps selected for each store.
If there are any problems with your submission, these are displayed in the Detail section.
For stores that are only partially integrated with UDP, you must complete the submission on the store’s own developer console. To do this, select Go to Store next to the submitted revision. A tooltip explains which steps are still required. Follow the links and complete your submission on the store’s console.
When you no longer need a game on the UDP console, you can archive it.
To archive your game:
When you have archived a game, you can then restore it or delete it from the UDP console.
To delete games you no longer need on the UDP console:
Note: This permanently removes the game from the My Games tab of the UDP console, and all of the game’s data from the Reporting Dashboard.
To restore archived games: