How to create .APK file for VR goggles?
Prerequisites for Building APK for VR Goggles (Meta Quest Series) in Unreal Engine
Creating an .APK file for VR goggles like the Meta Quest series involves packaging
an Unreal Engine project for Android-based VR headsets. This guide focuses on
Meta Quest (Quest 2, 3, Pro, or newer models) using Unreal Engine 5, as it's the
officially supported version.
developers.meta.com +1
By November 2025, use Unreal Engine 5.5 or the latest compatible version via
Meta's fork for best results.
dev.epicgames.com +2
The process requires a Meta Developer Account and building from source for
optimal features.
1. Install Unreal Engine:
For standard setup: Download Unreal Engine 5.5 from the Epic Games
Launcher.
For Quest-optimized setup (recommended): Use Meta's Oculus-VR fork
from GitHub (https://github.com/Oculus-VR/UnrealEngine).
forums.unrealengine.com +1
Link your Epic Games and GitHub accounts to your verified Meta
Developer Account.
Clone the repository, checkout the 5.5 branch (or latest, e.g.,
oculus-5.5.x-release).
developers.meta.com
Build from source using Visual Studio (requires setup; follow
Meta's docs for instructions).
2. Set Up Android Tools:
Install Android Studio (latest version) and let it download Android SDK
(API level 35+), NDK (r26+), and CMake.
Install OpenJDK 17 (preferred for UE5.5+).
Download Meta's ADB drivers from developer.meta.com.
Enable Developer Mode on your Quest headset via the Meta Quest
mobile app (Devices → Headset Settings → Developer Mode).
3. Meta Developer Setup:
Create a free Meta Developer Account at developer.meta.com.
Install Meta Quest Developer Hub (MQDH) or SideQuest for APK
installation and testing.
4. Connect Headset:
Enable USB Debugging on Quest (Settings → System → Developer).
Connect via USB to your PC and verify with adb devices in a command
prompt.
Step-by-Step Guide to Create the APKStep 1: Create or Open a VR Project
Launch Unreal Engine 5.5 (fork preferred for Quest fixes).
dev.epicgames.com +1
Create a new project: Games → Virtual Reality template.
Or open an existing project and add VR elements (e.g., VR Pawn for
head/hand tracking).
Step 2: Enable Plugins
Edit → Plugins.
Enable:
Meta XR (essential for Quest; includes passthrough, hand/eye
tracking).
developers.meta.com
OpenXR (for cross-platform VR support).
OpenXR Hand Tracking (for gestures).
Any additional Meta XR Platform plugins from the fork.
Restart the editor. Update Meta XR SDK to the latest (v71+ or current, via
Meta's portal).
developers.meta.com
Step 3: Configure Project Settings
Edit → Project Settings → Platforms → Android.
SDK Setup: Click "Configure Now" or set paths manually (SDK: ~C:\
Users[User]\AppData\Local\Android\Sdk).
Accept SDK licenses.
Use these settings for Quest compatibility:
developers.meta.com
Category Setting Value
com.YourCompany.YourProject
Basic Package Name
(unique)
32 (or higher for newer Quest
Basic Minimum SDK Version
features)
Basic Target SDK Version 35+
Package game data
APK Packaging Checked
inside .apk
Shipping (final) or Development
APK Packaging Build Configuration
(testing)
Advanced APK Supported Texture
ASTC only (uncheck others for Quest)
Packaging Formats
Advanced APK
Graphics API Vulkan (uncheck OpenGL/ES)
Packaging
Advanced APK Enable Fullscreen Checked
Packaging Immersive
False (testing); generate keystore for
Distribution Signing For Distribution
release
Rendering Mobile HDR Checked (for VR)
Rendering Forward Renderer Enabled (for mobile performance)
Engine → Rendering: Disable Nanite/Lumen (not supported on Quest).
roadtovr.com +1
Input: Enable Virtual Reality mode.
Scalability: Set to Mobile or Low for Quest optimization.
Step 4: Cook Content
Optimize assets: Use ASTC textures, reduce polygons, avoid unsupported
features like hardware tessellation.
reddit.com
File → Cook Content for Android (ASTC).
Fix any errors in the Output Log.
Step 5: Package the APK
File → Package Project → Android → Android (ASTC) or Quest-specific if
available in fork.
Select Shipping build for standalone APK.
Set output folder (default: YourProject/Saved/StagedBuilds/Android).
Package: This compiles and creates the APK (5–30+ minutes).
Monitor Output Log for issues (Window → Developer Tools → Output Log).
Step 6: Locate and Deploy the APK
APK Path: YourProject/Binaries/Android/YourProject-Android-Shipping-
arm64.apk.
Install:
ADB: adb install -r YourProject.apk.
MQDH or SideQuest: Drag and drop the APK.
From UE: Launch → Android (ASTC) on connected Quest.
On Quest: Apps → Unknown Sources to run.
Troubleshooting
No APK Output: Wrong texture format or SDK paths; clean
Intermediate/Saved folders and retry.
Build Fails: Check for missing plugins or incompatible features (e.g., no
Nanite on Quest).
roadtovr.com +1
Signing Errors: Generate a keystore in Distribution Signing.
Performance Issues: Use fork for Vulkan updates and fixes.
developers.meta.com
Large Files: Enable OBB for >1GB apps.
For App Lab/Store release: Sign properly, ensure <1GB, use Oculus Platform
tools.
If issues persist, check Unreal Forums or Meta's GitHub for Quest-specific fixes.
developers.meta.com
Share your UE version, Quest model, and log errors for more help!