What is Oculus App Lab an Introduction?

In February 2020, Oculus finally pulled the curtain of their much anticipated App Lab Storefront. Oculus App Lab offers an excellent alternative to the regular Oculus Store for apps or games that, for some reason, can’t be allowed in the regular Oculus store. Examples of such apps are games that are still under development or don’t fully meet store guidelines. Our Headjack Link app is another example that fits better in App Lab since it is more focused on the Headjack CMS users and is not interesting for the general public.

Oculus App Lab Image

Thank god, No More Sideloading!

Probably the most important reason to publish your app to Oculus App Lab is that it will eliminate the need for sideloading apps. App Lab offers the same friction-free installation procedure for your end users as they are accustomed to for regular apps or games.

Sideloading has always been a significant technical hurdle in getting apps and content distributed to a broad audience; with App Lab, we finally have a viable method other than sideloading to install apps on our end-users devices.

Oculus Store vs. App Lab:

There are two main differences between the two stores; first, the Oculus store is much harder to get in since they enforce many more technical specifications which your app has to comply with compared to Oculus App Lab. Next to the much stricter technical audit, the app or game’s content will be up for review since Oculus is very protective about its storefront. Essentially this means that Oculus will grant only A-level games access, and B2B apps are ruled out. It is possible to get promoted from App Lab to the regular Oculus Store; please check step 9 of this guide.

Secondly, there is a difference in how your app is promoted on the Oculus Platform. If you publish your app in App Lab, you have to do all the promotions yourself. You get a direct web link to the app, and your app is searchable in the Oculus store only by its full name. Please read step 7 in this handout for more information on how to promote your app and how to find it.

9 Steps: For Submitting Your VR App or Game to Oculus App Lab Storefront

Step 1: Prepare and Test:

Before submitting your app, make sure it works and is tested on your local devices to avoid going back and forth with the submission team a lot. It’s almost unavoidable to resubmit your app a couple of times to make changes to the app’s content or the app itself. Still, by testing your app in advance, you will keep these changes to a minimum, and it will speed up the process significantly.

So start building a couple of local builds of your app or game and test them on your local Quest devices; an excellent tool to help you with this is the Oculus Developer Hub. In the case of a Headjack app, make sure your video plays well and that all your artwork looks good. Furthermore, make sure you meet all the Content Guidelines dictated by Oculus; otherwise, your app or game will unquestionably be declined for approval.

Step 2: Check the Technical Guidelines and Store Assets:

Next to the content guidelines, your app or game also has to meet technical guidelines to guarantee a good user experience. For Headjack apps, you don’t have to do anything since we ensure full compliance with the latest store requirements, but for custom apps or games built other than with Headjack Cloud Build, make sure you follow these guidelines before submitting.

Step 3: Sign & Build Your VR Apps Correctly:

If you have an app you would like to submit to the Oculus App Lab for approval, you have to make sure your app build is signed correctly. Find the guide below on how to build a signed APK if you are a Headjack user, use our SDK, or when you are using the Unity Game Engine.

Generate an App ID & Android Keystore:

  1. Create an Oculus account or log in
  2. Register as a Developer 
  3. Log in to the Oculus Developer Dashboard
  4. go to My Apps > Create New App
  5. Give your app a Name
  6. Select Quest (App Lab) and hit create
  7. Navigate to the API section in the left menu
  8. Copy the App ID 
  9. Generate the Android Keystore following this Tutorial
Oculus App ID

You should now have an App ID and an Android Keystore + Password to proceed to the next steps. Find the correct guide below on how to build a signed APK for your user profile.

Headjack Users that use Headjack Cloud Build:

  1. Go to Apps > App Signing
  2. Create new signing credentials
  3. Fill in the App ID
  4. Give the credentials a name
  5. Select Store
  6. Select Oculus Quest
  7. Upload the Android Keystore
  8. Save
  9. Navigate to App page > App Name
  10. Click Build App
  11. Select “Oculus Quest” as the platform
  12. Select store build
  13. Add signing files + Passwords
  14. Click Build
  15. Wait for the app build to finish
  16. You can now download the signed APK on the builds tab or directly on the app page
Headjack build configuration

For more information on Headjack Cloud Build, click here.

Headjack Users that use our Unity SDK:

  1. Open your Unity Project
  2. Find the Headjack tab in the main UI and click Settings
  3. Fill in the Headjack app ID
  4. Fill in the Headjack Auth Key
  5. Select VR API Oculus
  6. Select VR Device Oculus Mobile
  7. Enable store build checkmark
  8. Click set Oculus app ID
  9. Inspector Tab should open with Oculusplatformsetttings
  10. Fill in the Oculus Quest App ID
  11. Add the Android Keystore
  12. Build the app as you would typically with the Headjack SDK
  13. You now have a signed APK
Headjack SDK plugin

For more information on the Headjack Unity SDK, click here.

Unity users that use the Oculus SDK:

  1. Import the Oculus SDK
  2. find the Oculus Tab > platform > edit settings in the main UI
  3. Inspector Tab should open with Oculusplatformsetttings
  4. Fill in the Oculus Quest App ID
  5. Add the Android Keystore
  6. Build the app as you would typically with the Oculus SDK
  7. You now build a signed APK

For more information on signing apps in Unity, click here.

Step 4: Set-Up Release Channels

Now that you created a signed APK file, you can upload it to a release channel in the Oculus Developer Dashboard. Release channels reflect the different stages an app can go through before your apps get published to the storefront. In every channel, you can invite specific users by the email associated with their Oculus Account. Typically, you are moving a build through these specific channels before releasing them to the production channel for the store’s final release.

See the example below on how you could use these channels for a small production team or app releases in a corporate environment. 

Example on how to use the various release channels in production

Alpha: Build that is used for testing on new features in a test environment 

Invited users: Internal development team only.

Beta: Build that is used for testing with a small beta group

Invited users: Internal development team + small beta user group

RC (release candidate): Build that is shared with clients for final approval

Invited users: client + management

Production (App Lab): Build that is released to the Store

Users: All

After you uploaded your build and users accepted your invite (don’t forget to invite your own Oculus account !), you can download the app under the “my preview app” tab (scroll completely down in the store app list or mobile app) inside the Oculus Quest Headset or mobile app.

After you have set up your release channels and invited users, you can now upload the signed APK from the previous step in your desired release channel. After you uploaded the build, Oculus will run some basic tests; when these are finished, your app will be available under the “My preview Apps” Tab inside the Oculus store .

Important Update ! as of lately it’s only possible to upload new builds trough the Oculus Developer Hub, more in information on this is available here.

If you want to keep the app private for some reason, you can use these release channels to distribute your apps to various team members or clients. If you don’t submit your app (step 5 and following), your app will become only downloadable under the “my preview apps” tab and only for the users you invited to a specific release channel.

You can find more information about the release channels and how to use them here.

Step 5: Start the submission process:

When you and your team are happy with the build in the RC channel, you can go ahead and move it to the Production (app Lab) channel and start the further submission. In the next step, you will be submitting your app for review by the Oculus Team. You will be adding store artwork, pricing description, etc. 

Make sure to read this excellent guide before you make the final submission, so you know what assets you have to get ready and what decisions you have to make for this final step on pricing, etc.

  • Navigate to App submission
  • Complete the step-by-step instructions to complete your first submission
  • If you met all of the required steps, you could click submit to the store

If you have done everything correctly, you can navigate to the Overview page to check your submission progress. Since each app is reviewed individually, the first review can take a couple of weeks to complete.

Step 6: Submission process > Bugfix and Resubmit:

Sometimes your app won’t be approved after the first submission, and you have to make some changes to the app by fixing bugs or content or making changes to store art, for instance.

You now have to redo some of the steps above, depending on what needs to be changed and required by the submission team to get your app approved. Resubmit your app together with a detailed log of what you changed en resubmit. You may have to go back and forth a couple of times, but revalidation should be much faster after your first submission.

Step 7: Where to find your app and how to share it

If you have done everything correctly and received approval from the submission team, your app will be granted access to the App Lab storefront.

Now you have to share it with your customers and let them know how they can download the app since Oculus won’t be doing any extra promotions, nor will your app be visible in the regular Oculus Storefront. Third-party platforms like Sidequest or oculusapplabs.com do index apps that are submitted to the Oculus store for extra promotion.

You have two options to point a user to your app:

Method 1: Share the DPD URL

Share the project details page link, which you can find under the app submission tab, and install through the Oculus mobile app.

Method 2: Download directly onto your Quest

Search for your app’s exact name in the Oculus store and download it directly onto your headset (make sure to use the exact app name !)

Step 8: Update your app.

If you want to push new updates to your app, update your app by uploading a new build to the Production (App Lab) channel like you did in step 5; after that, resubmit your app.

If you are a Headjack user and want to make changes to your app that don’t require an app update by adding new content or videos to your app, please read the following guide on how to do that.

Update an Headjack App

Step 9: Get promoted to the regular Oculus Store Front.

If your app does well in App Lab, Oculus can promote your app to the regular storefront with the added benefit that your app will have a much bigger audience and visibility. You have to go through another audit with stricter technical specifications, but it’s essentially the same process but with a new app which is unlocked by the Oculus team.