Bring Your Android App to Meta VR Glasses

Blog Hero Image
Meta VR Glasses arrive in spring 2027, and Android developers can start preparing their apps for them today. With an operating system built on the Android Open Source Project, our newest device gives you a way to bring an existing Android product to a different form factor using familiar tools.
You can continue working with Kotlin or Java in Android Studio as you adapt the app's interface for a resizable spatial window. Users look at controls and pinch to select them, so buttons need enough space for comfortable targeting. Layouts also need to remain readable as the window resizes.
Meta Spatial Simulator lets you begin testing those changes now, before hardware ships. This guide explains how to adapt an existing Android app for Meta VR Glasses, drawing on the choices developers behind NordVPN, AnExplorer, and BeamXR made when bringing their products to Meta VR headsets.
TL;DR

Start with the user need

Before changing the interface, consider what someone needs your app to do while wearing Meta VR Glasses. An Android interface may already suit that task without needing 3D elements.
NordVPN demonstrates this on existing Meta VR headsets. People had been sideloading a VR build of its Android app for years to protect their connections.
"People were actively looking for privacy protection in VR even when accessing it required extra effort," said NordVPN CTO Marijus Briedis.
For its official headset release, NordVPN kept an Android interface suited to connection management. The task didn't require a 3D experience, so the team could focus on reliability and platform requirements.
When preparing for Meta VR Glasses, preserve the interactions that serve the user's needs and adapt them for the new setting. A wider window may show more information, but a narrower view must still keep essential actions accessible.

Make your existing app work for VR Glasses

With the task defined, get your app running. Android apps use familiar activities and UI architecture, so your business logic and data models can remain in place.
AnExplorer's solo developer, Hari Dulipudi, adapted an Android file manager that people were already sideloading onto their headsets. Dulipudi estimated that an existing Android app could be adapted in about a week with the documentation available at the time, including accessibility and usability checks. The app also drew requests from video production studios for bulk licensing across more than 100 headsets to manage footage through network shares.
Reusing the codebase still requires reviewing platform connections. Meta VR devices don't include Google Mobile Services, so check integrations such as Google sign-in, cloud messaging, and Google Play Billing. Product flavors can separate dependencies into different APKs. For a single APK, the Meta VR OS Utility Library supports runtime detection; guard the full call chain so unsupported classes aren't loaded.

Set up the project

  1. Install a supported Android Studio release and the Meta VR Android Studio Plugin. The current plugin build, 261.2.0.1.49, supports Android Studio Quail 2026.1.1 through 2026.1.4.
  2. Create a project from the Meta VR template, or open the Meta VR tool window and select Create Product Flavors to prepare an existing app.
  3. Update AndroidManifest.xml. Add com.oculus.supportedDevices with vrglasses, set an initial window size, and remove prohibited permissions.
  4. Keep standard UI and accessibility information accurate. Look and Pinch works at the system level and sends normal touch events, so a typical Android app does not need to read eye or hand data.
  5. Add optional spatial packages only when the experience needs them. The Meta VR Layout SDK allows you to attach Spatial Windows to your layout, and the Meta VR UI Set SDK comes with a component library optimized for VR.
  6. Run metavr init. In Android Studio, open the Meta VR tool window and click Open in terminal on the Meta VR CLI card. The command installs agent skills, configures the MCP server for your AI coding agent, and offers to sign you in. Sign in when prompted, or later with metavr auth login. Once you're signed in, metavr ssim start signs the simulator in to the same account.
  7. Start Meta Spatial Simulator from the plugin or Meta VR CLI. Build the APK with Android Studio or Gradle, then use Meta VR CLI to install and launch it.
metavr init
metavr tools install spatialsim
metavr ssim start
metavr app install path/to/app.apk
metavr app launch package.name

Optimize it for the VR form factor

With your app running in the simulator, examine its controls and layout. The system uses your view hierarchy and accessibility information to identify Look and Pinch targets. Focus on these checks:
  • Match clickable regions to visible controls. Check custom controls so users can select the element they're looking at.
  • Give neighboring actions enough space. A file list can pack filenames, checkboxes, and overflow buttons into tight rows. Make touch targets at least 48dp and leave at least 24dp between neighboring targets.
  • Keep the layout usable as the window resizes. Windows appear larger on Meta VR Glasses, and the field of view is narrower than on Meta Quest, so users are more likely to resize your window. Check that text and navigation remain legible and accessible as the panel narrows. Evaluate readability in spatial context, where text size and panel distance both matter.
  • Make essential actions available on selection. Your app doesn't receive raw gaze data or gaze-derived hover events; the system handles hover highlighting. If an action appears only on hover, provide a selection-based alternative.
The system handles Look and Pinch targeting and hover highlighting, then converts a pinch into a standard Android touch event. Your app receives touch input, not raw eye data.
The Look and Pinch guidance covers sizing, UI understanding, and framework requirements. The optional Gaze SDK lets you override target inference, exclude an element, or add a hover tooltip. It's in developer preview and available by request, with a stable release planned before Meta VR Glasses launch.

Add Meta VR SDKs to add new capabilities

After you adapt the main window, consider whether part of your app would be more useful in its own space. The Meta VR Layout SDK lets Android apps built with Jetpack Compose or React Native place spatial windows around the main window. Your app keeps its activity and UI architecture, doesn't need to become fully immersive, and stays open alongside other apps.
Use spatial windows for supporting content such as tools, details, and controls. Keep the core task in the main window, and treat each spatial window as a focused extension of it. A file manager, for example, could show file details in a window beside its file list.
  • Describe where each window belongs. Anchor it to the main window and add an offset if needed. The system chooses the final placement within the available space.
  • Choose a fallback for every window. When spatial placement isn't available, such as on a phone, each window uses the fallback you set. By default, its content appears in your normal app layout, so the same code can serve phones and Meta VR devices.
  • Set priorities. When space is limited, priority tells the system which windows should be placed first.
The Meta VR Layout SDK works on all Meta VR devices, so your spatial windows can run on Meta Quest today and are ready for Meta VR Glasses. Meta Spatial Simulator can model them during development; confirm final placement on a device. For 3D objects or environment manipulation, use Meta Spatial SDK.
The Meta VR Layout SDK guide covers setup for Jetpack Compose and React Native, plus anchors, fallback, priority, and best practices.

Testing without a headset

Once the layout works, follow the task through to completion. In Meta Spatial Simulator, check these transitions:
  • Complete the main flow. Test text entry and navigation, including sign-in where needed.
  • Follow handoffs out of the app and back. Check supported browser and file-picker flows, ensuring users can return and continue their task.
  • Interrupt and resume. Leave the app midway through an operation, then return. Run it alongside other windows to check backgrounding and state preservation.
The simulator supports a documented subset of Platform and billing APIs. Some calls use local sample data; others require a signed-in account and connect to Meta services. Check which behavior your test verifies.
These checks help refine the flow, but final testing on Meta VR Glasses must cover performance, comfort, visual quality, and input behavior. The simulator is for standard 2D Android apps; Spatial SDK, OpenXR, Unity, and Unreal apps use different tools.
Hardware testing should reflect how people use the app. BeamXR Live streams headset experiences to Twitch and YouTube. Its five-person team needed reliable streaming alongside demanding games. Three to four weeks into development, they switched from software to hardware encoding.
"Both the quality and the performance massively improved for us," said lead developer Rory Clark. BeamXR used the Android emulator early on and later adopted Meta Spatial Simulator. Use desktop iteration to refine flows, then include the most demanding workload in your hardware test plan.

🎯 Action item: Hear from the experts

Watch the Meta Connect session on building Android apps for VR⁠ for a closer look at bringing your existing apps to Meta VR Glasses and how to start building from scratch.

Make discovery and paid upgrades part of the launch

While you build and test, plan how users will find and install the app through your website and the Store.
NordVPN's existing VR build helped it move from launch decision to official Store release in about a month. The team also redirected website visitors from sideloading instructions to the Store.
Its headset app's lifetime user base grew roughly 10x in the first five months. Monthly active users rose about 3.5x in the first full month, then stayed within about 5% of that level over the next four months.
Your listing should explain the problem the app solves and show the experience. Submit a signed 64-bit APK through the Meta Horizon Developer Dashboard⁠ at least two weeks before launch, as Meta recommends. Requirements include the 2D subset of the Meta Quest Virtual Reality Checks, permission review, and ads self-certification where applicable.

Decide what stays free and what a purchase adds

BeamXR kept core streaming free and used community requests for custom overlays and clipping to shape its premium subscription. A watermark on free streams helped viewers discover the app; removing it became a paid branding feature. BeamXR reported one million minutes viewed in its first 12 weeks, with growth driven by word of mouth and social sharing.
AnExplorer offers a seven-day trial of base and advanced features. Base features stay free afterward; advanced features require an annual subscription or one-time lifetime purchase. Within two months on Meta VR headsets, Dulipudi reported matching the monthly revenue run rate that had taken five years to build on other platforms.
Whichever model you choose, make free and paid capabilities clear and test purchasing and access-granting. The Store supports paid apps, in-app purchases, and subscriptions. For existing Google Play Billing integrations, the Meta Horizon Billing Compatibility SDK offers familiar APIs.

Get started today

Use the compatibility guide for an existing Android app, or the getting-started guide for a new project. Run it in Meta Spatial Simulator and check whether someone can complete it with Look and Pinch at different window sizes.
–
For more developer updates, follow us on Facebook⁠, X⁠ and LinkedIn⁠, and subscribe to our monthly VR developer newsletter. Have thoughts on what we covered today? Start or join a conversation in the Meta VR Developer Forums⁠.
All
Apps
Design
Quest
Did you find this page helpful?
Explore more
Meta Quest 2 and Meta Quest Pro Reach End of Feature Development: What Developers Need to Know
Meta Quest 2 and Meta Quest Pro reach end of feature development with v213, rolling out by March 2027. Get key dates and plan your builds.
All, Apps, Entertainment, Games, Quest, Unity, Unreal
What Makes a Meta VR Title Work Hands-Only
Learn when hand tracking fits your Meta VR title and how to adapt and test hands-first interactions before Meta VR Glasses ship.
All, Apps, Design, Games, Hand tracking, Quest
Immersive Web SDK 1.0: Build for Quest and Meta VR Glasses with AI-Native Web Tools
Immersive Web SDK 1.0 is out now, with AI-native tools, a scene editor you share with your coding agent, and gaze + pinch for Meta VR Glasses.
All, Apps, Design, Entertainment, Games, Hand tracking, Marketing, Quest, Web VR

Get the latest updates from Meta VR.

Get access to highlights and announcements delivered to your inbox.