Docs

iOS and Android Sync

Sync version and store build numbers into the iOS and Android project settings.

iOS and Android settings have their own version fields in Project Settings, and they can drift out of sync with the Project Version. Version Forge can update them at build time if enabled. Each platform has two settings:

  • A version setting, for the version displayed to users, such as 1.5.7.
  • A build number setting, for the number the App Store or Google Play requires to increase with every upload.

iOS

Version Info

The version shown to players (CFBundleShortVersionString).

OptionWrites to VersionInfo
Engine Default (No sync)Nothing.
Sync from Major.Minor.Patch 11.5.7

The config will be written to Config/DefaultEngine.ini:

[/Script/IOSRuntimeSettings.IOSRuntimeSettings]
VersionInfo=1.5.7

Bundle Version

The iOS build number (CFBundleVersion). See build number sources for options.

Unreal builds CFBundleVersion from the engine changelist and a counter file it increments with every build which is stored in Build/IOS/<ProjectFolder>.PackageVersionCounter. If enabled, Version Forge will overwrite the value in that counter file during compilation.

Android

Version Display Name

The version shown to players (versionName).

OptionWrites to VersionDisplayName
Engine Default (No sync)Nothing.
Sync from Major.Minor.Patch 11.5.7
Sync from Short VersionThe Short Version, such as 1.5.7, or 1.5.7-beta.

The config will be written to Config/DefaultEngine.ini:

[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]
VersionDisplayName=1.5.7

Store Version

The Android build number (versionCode). See build number sources for options.

The config will be written to Config/DefaultEngine.ini:

[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]
StoreVersion=418

Build number sources

iOS Bundle Version and Android Store Version have the same options and can pull from the same sources:

OptionValue used
Engine DefaultNone. Unreal default behavior.
Build NumberThe captured CI build number.
ChangelistThe captured changelist. It must be numeric.
Environment VariableThe value of the variable you configure.
Command Line ArgumentThe value of the argument you configure.

Offset

The Offset field will allow you to set a numeric value that will be added to the build number after it's pulled from the source setting. It's useful if you need to ensure the value is above previously uploaded versions.

When the sync runs

If any setting is enabled (not Engine Default), a normal CI/CD build will run the sync behavior. However, the sync will not be run for:

  • Local builds.
  • Editor builds.

If you package your project outside of a CI/CD system and want it to run the platform sync, define a build number when packaging. See Local Builds and Command Line Arguments.

Source control

Since these settings write to files in the workspace when building, they may show up as modified in source control. Version Forge will not submit them, it's up to you to decide to discard the changes or commit them, either by hand or from your CI/CD configuration.

If you use a distributed build system where compilation and packaging can happen on different nodes, for example with a BuildGraph system, you will need to ensure these files get copied by your build system between the nodes.

Footnotes

  1. The Patch value resolves to the Patch Source setting. ↩ ↩2

On this page