Applications may require a minimum version of the Horizon Operating System (Horizon OS) to launch. This restriction can be added:
Implicitly, by using a feature available only in a newer Horizon OS version. For example, if your application supports Quest 3, it requires a minimum Horizon OS version of v56, the first version that supports Quest 3.
Explicitly, by defining a minimum Horizon OS version in your app’s uses-horizonos-sdk manifest element. This is useful if your app has implicit dependencies on a specific Horizon OS version, such as attempting to launch a system package with an intent supported only in a newer Horizon OS version, or for multiplayer applications that want to ensure all players have the latest security updates.
Determining the Horizon OS versions used by your app’s users
Requiring a minimum Horizon OS version to use your app
To explicitly define a minimum Horizon OS version, add the following line to your AndroidManifest.xml file, as a child of your root <manifest> element. Replace [version] with your preferred Horizon OS version number, such as “83” or “205”.
Some settings and features in your app implicitly require a minimum Horizon OS version. For example:
In your app’s AndroidManifest.xml file, setting android:minSdkVersion on the uses-sdk element sets the minimum Android SDK API level that your app is compatible with. Your app cannot be distributed or installed onto devices running an Android SDK API level lower than this. See the android:minSdkVersion attribute in the Android documentation for details.
Adding a device to com.oculus.supportedDevices sets the minimum Horizon OS version to the first version that supports that device.
Using Unity’s OpenXR loader from the com.unity.xr.openxr package sets the minimum Horizon OS version to v65.
Using the Android Camera2 API for direct access to camera frames sets the minimum Horizon OS version to v74.
When multiple features apply, your app requires the highest minimum Horizon OS version among all relevant features. For example:
Using both the OpenXR loader from the com.unity.xr.openxr package and the Android Camera2 API sets the minimum Horizon OS version to v74.
When you declare a minSdkVersion:
The Meta Horizon Store will only show your app to users on compatible devices
Users on older devices won’t be able to install or update to this version
You can safely call the APIs without error handling for version compatibility
Checking the minimum Horizon OS version for your app
To check the minimum Horizon OS version for your app, upload a build to the Developer Dashboard and view the build details in the Distribution > Build page for your app. See Uploading a build to your Developer Dashboard.
The Developer Dashboard shows the reason it selected a specific Minimum OS version for your app as shown in the following screenshots.