If you’ve submitted an app for Oculus Gallery, Store, or Keys consideration, you’ve used release channels to do so. Release channels is a tool for staging your app from alpha versions to your live version with mechanics for helping you improve your app quality and engagement through each stage. The following is a quick tutorial on how to use Oculus release channels to the fullest.
What are release channels?
Release channels host the various iterations of your app from initial idea and concept (Alpha and Beta Channels) to polished product (Release Candidate). In each channel, you have the opportunity to gain insight from test users who you’ve invited—giving you valuable feedback to further improve your VR app. With each successive build version, you'll see the impact of your testing. Release channels support up to 100 Oculus users by email invitation. In the case where users are subscribed to more than one channel, they'll receive access to the build with the highest version number.
There are four default release channels: Alpha, Beta, Release Candidate, and Store. There is also a custom channel creation ability. Custom channels are a great option when distributing a stable build for press or for other promotional efforts.
The first time you upload a build of your app to Oculus, it goes into the Alpha release channel. After this, you're free to select different channel destinations when you upload subsequent builds.
Alpha Channel:
Alpha Channel is used for initial prototyping of your application. As your VR experience will go through its first test run in this channel, it is important to have test users that are willing to provide thorough and honest feedback.
Test users for your application will ideally have experience with previous VR applications and/or have experience in developing VR experiences themselves. Common improvements made in the Alpha Channel involve refining your application's purpose: is the experience unique/compelling/enhanced by VR?
Beta Channel:
Beta Channel is used for graphics polishing, comfort, fun and larger group testing. We recommend going through several Alpha Channel iterations with a varied test user base prior to switching to this channel.
Release Candidate (RC) Channel:
The RC Channel is used for final testing of your application by as many and varied test users as possible. Applications that make it to the RC Channel have gone through several iterations and will have taken into account all of the combined feedback and input from previous Alpha and Beta channel test users. At this stage, it is ideal to source test users who have not been involved in previous builds of your application—the new user experience is key at this stage: is your application graphically engaging and intuitive to use? If the opinion of these test users is positive, you are most likely ready to submit to the Oculus Store.
Store Channel:
With the
store submissions guidelines in mind, this is the end result of all your hard work and testing through the release channels. The Store channel does not have subscribers. When you place a build in this channel for the first time, nothing happens until you've entered all your submission info and click "Submit for Review".
After your app is approved for Oculus Store distribution, the build in your Store channel becomes the live build for all Oculus Home users. If your app was approved for the Oculus Store or the Oculus Gallery, users will be able to browse and find your app in the Store. If your app was approved for Oculus keys, you can distribute keys for user download.
OK, release channels sound great—what about test users?
It is important to get an honest assessment of your application as it passes through the release channels. To do this, make sure your test users are willing subjects. They must be engaged and available to give fair feedback about everything from your content, design, and UI, to the overall experience and its comfort.
Oculus hosts developer discussions through the Oculus forums. This could be a good place to request test users from developers who are in the same stage of development or from veteran VR developers already seeing success. Unity and Unreal also host forums where you can request volunteer test users to provide game-engine specific advice regarding your application.
Adding test users is simple; ask the user if they’d like to participate. If so, add their email address to your application’s channel. Once added to the list, the test user is put into a “pending status” and a confirmation email is sent to the user's email address. The test user will stay pending until the user has confirmed their inclusion into the channel.
Users subscribed to your release channel are granted an entitlement to download and run your build for as long as they remain subscribed to that channel. Removing a user from the channel disables their access to the build.
Users With Access to Multiple Release Channels Get the Highest Build Version
Users who are subscribed to more than one of your app’s release channels get the version with the highest build version number that is available to them. For example, in the scenario below, a user with entitlements to all these channels would download build 67 in the RC Channel, because that is the highest build version number across the channels.
- Alpha: build 55
- Beta: build 63
- Release Candidate: build 67
- Store: build 44
Avoiding common mistakes when using release channels
Gear VR:
- No matter the release channel (STORE not included), the version and version code of the APK file must be unique. For example, a VR application with version 1 and version code 2 in the Alpha Channel will block a version 1, version code 2 Beta Channel build from being uploaded.
- Only build versions with higher version numbers can be copied over lower version builds. So, if there is already a build inside a release channel, you cannot replace that channel’s build with an older version. The build version numbers are indicated on the Build Dashboard.
- You cannot reduce the Android minimum API version. Doing so would break end user update flows.
- Do not upload a higher API build of your application to any channel without confirming that this is absolutely necessary, as the system will not allow you to upload a lower version API build to any release channel after.
- Do not change the package name of your application from your original name. Doing so will cause the system to reject the upload into any release channel. This is because the system makes a canonical name from your developer organization's name and the package name of your application. Try not to name your package after the channel you uploaded it to: at all times make the package name the final name of your app.
Rift:
- You can upload the same application build to multiple release channels.
- Only builds with higher version numbers can be copied over lower version number builds. So, if there is already a build inside a release channel, you cannot replace that channel’s build with a lower version number. The build version numbers are indicated on the Build Dashboard. In this example, Beta has the highest version code and could be copied over any of the other builds. RC has the lowest code and could not be copied over any of the other builds:
— The Oculus Team