Skip to main content
All CollectionsVR ContentApps
App Versioning & Build Variations
App Versioning & Build Variations

Best practices, FAQs, and troubleshooting for versioning your apps in ManageXR.

Luke Wilson avatar
Written by Luke Wilson
Updated over 2 months ago

ManageXR supports uploading multiple versions of the same app. This allows you to deploy different versions of an app to different devices, which can be very useful for things like beta testing, A/B testing, or deploying custom builds to specific clients.

ManageXR parses all versioning information directly from your APK, and our rules around versioning closely match those of the Android operating system (and most content distribution platforms that run on Android, like the Google Play Store). Importantly, this versioning information must be set by a developer at build time (inside a development environment like Unity or Unreal).

Tip: If you're uploading your app to share with many clients or other ManageXR organizations, you may want to use Release Channels to assist in app deployment. Then, as your app evolves, rather than updating each of your configurations with the new version, you can instead update the app's Release Channel.

Package Name

  • Definition: A unique identifier given to an app. All APKs uploaded to ManageXR that share the same Package Name will be grouped as different versions inside the same ManageXR App.

  • Example: com.yourcompany.yourapp

  • Important Rule: A device cannot have two apps installed that share the same Package Name.

  • How to Set:

    • Unity: Player Settings > Other Settings > Identification > Package Name

    • Unreal: Project Settings > Android > Android Package Name

Version Code

  • Definition: An integer number that identifies a build version.

  • Example: 10207

  • Important Rule: A device cannot install an app with a lower Version Code than what is currently installed (in other words, Android does not support Version Code downgrades/rollbacks). Thus, new builds should always have a higher Version Code than previous builds.

  • How to Set:

    • Unity: Player Settings > Other Settings > Identification > Bundle Version Code

    • Unreal: Project Settings > Android > Store Version

Version Name

  • Definition: A human-readable string that identifies a build version.

  • Example: 1.2.7-prod

  • Best Practice: Use this as your primary version, and follow semver versioning syntax.

  • How to Set:

    • Unity: Player Settings > Other Settings > Identification > Version

    • Unreal: Project Settings > Android > Version Display Name

Version Label

  • Definition: A human-readable string you specify on the ManageXR Web Console.

  • Example: Meta , Pico

  • Best Practice: Use version labels in order to upload different APKs with the same other metadata (Package Name, Version Code, Version Name) to the platform. E.g., you want to upload a Meta and a Pico version of an APK, but the other identifying metadata is identical.

  • How to Set:

    • ManageXR Web Console: Designate the Version Label when you upload a new version of an app to ManageXR

Bundled Files

  • Definition: APK, OBB, and other files that support app versions

  • Example:

  • Best Practice: App versions can contain APK, OBB, AND other Bundled Files. Bundled Files help you distribute, organize, and update supporting files efficiently. Learn more

FAQs

I want to install two different versions of the same app at the same time. How do I do this?

The Android operating system does not support installing two apps with the same Package Name. Thus, you must use a different Package Name for each app version you want to install concurrently on a single device.

I have different app versions for different device types (Pico, Meta, Vive, etc.). What is the best practice for handling this situation?

If you would like to keep the Package Names and Version Names the same across device types, you can apply App Version Labels to distinguish your APKs. App Version Labels enable you to upload multiple versions of an application with the same metadata (Version Code, Version Name, and Package Name).


Need more help?

Talk to a member of our team using the chat bubble (in the bottom right of your screen), or reach out to support@managexr.com

Did this answer your question?