Develop

Deploy and Test

Updated: Oct 12, 2026

Deploy and test

You’ve built a hand-tracked UI and now it’s time to test it. Pick the method that fits your setup. For a comparison of testing methods, see the Unity Quickstart overview. For iteration guidance, see Iteration Speed Best Practices.
Meta XR Simulator runs your app from the Unity Editor without a headset. It uses keyboard and mouse input to simulate head and hand tracking on Windows and Apple Silicon macOS. On macOS, it requires Unity OpenXR Plugin v1.13.0 or later and Meta XR Core SDK or Meta XR All-in-One SDK v66 or later.
Best for: Editor-based layout and interaction checks without a headset.
Limitations: Uses simulated input. Test a device build on a headset before release.
Install Meta XR Simulator
  1. Download and install the standalone Meta XR Simulator application for Windows or Apple Silicon macOS. Complete the installation before activating it in Unity.
Activate Meta XR Simulator
  1. In the Unity Editor, click the Meta XR Simulator icon next to the Play button in Unity’s top toolbar. Alternatively, select Window > Meta > Meta XR Simulator > Activate.
    Unity Window menu open to Meta > Meta XR Simulator with Activate highlighted.
  2. Check the Unity console log and confirm that it shows Meta XR Simulator is activated.
    Unity Console showing the Meta XR Simulator is activated message with the simulator runtime paths.
Press Play
  1. Press the Play button in the Unity Editor to run your app in Meta XR Simulator.
    Meta XR Simulator window showing the scene with simulated controllers, beside the Unity toolbar with Play active.
  2. In Meta XR Simulator, use the mouse to look around. Confirm that the view changes as you move the mouse.
    Meta XR Simulator view turned toward the sofa and plant after moving the mouse.
  3. Use the WASD keys to move. Confirm that your position in the scene changes.
    Meta XR Simulator view of the room with simulated controllers after moving with the WASD keys.
Switch to hand input
  1. In Meta XR Simulator, open the Input Simulation tab.
    Meta XR Simulator with the Inputs tab highlighted in the sidebar and both inputs set to Controller.
  2. Under Active Inputs, set Left and Right to Hand. Confirm that both Left and Right show Hand.
    Meta XR Simulator input settings with Left input and Right input set to Hand and simulated hands in view.
  3. Open Input Bindings to view or change the mappings.
    Meta XR Simulator Input bindings panel listing keyboard and mouse mappings for movement and Quest buttons.
Test your UI
  1. Use the mouse to change your view and the WASD keys to move until the button, slider, and toggle from Interaction Setup are in view. To find the keys for other actions, open Input Bindings.
    Meta XR Simulator view of the UI panel with a button, toggle, and slider, beside the Input bindings list.
  2. Press keys 1 through 4 to switch between the aim, poke, pinch, and grab poses (the default bindings). Hold the Left mouse button to pinch. Release it to return to the aim pose.
  3. Use the poke pose to press the button. Confirm that the button responds to the poke.
    Simulated hand poking the button on the UI panel in Meta XR Simulator.
  4. Use the aim pose and pinch to select the button or move the slider. Confirm that the selection registers or the slider thumb moves.
    Simulated hand pinching with a ray pointed at the slider on the UI panel in Meta XR Simulator.
  5. Select the toggle and confirm that its state changes.
    Simulated hand ray selecting the highlighted toggle on the UI panel in Meta XR Simulator.
  6. When testing is complete, press Play again to stop.
    Unity toolbar with the active Play button highlighted.
  7. Go to Window > Meta > Meta XR Simulator > Deactivate before switching to headset testing.
    Unity Window menu open to Meta > Meta XR Simulator with Deactivate highlighted.
For any troubleshooting issues, see:
Meta XR Simulator also supports controller input and synthetic environments with different room layouts. See the Meta XR Simulator overview to learn more.
On Windows, Link runs your app from the Unity Editor without building an APK. The app runs on the PC while the headset supplies tracking data.
Best for: Testing headset input from Unity Play mode on Windows without building an APK.
Limitations: Requires a Windows PC, a supported headset, and a USB-C connection. Test a device build on the headset before release.
  1. Download Meta Horizon Link⁠ and install it on your Windows computer.
  2. Connect the headset to the computer with a USB-C cable.
  3. On the headset, open Settings, select Quest Link, and turn on Quest Link.
  4. Select Launch Quest Link.
  5. In Unity, press Play. Your app runs through Link on the headset.
    Unity Game view in Play mode showing the UI panel and tracked hands, with the Play button highlighted.
Pass checks:
  • Poke the button and confirm that it responds.
    Tracked hand poking the button on the UI panel through Link.
  • Use a hand ray and pinch to select the button or move the slider. Confirm that the selection registers or the slider thumb moves.
    Tracked hand pinching with a ray pointed at the slider on the UI panel through Link.
  • Select the toggle and confirm that its state changes.
    Tracked hand ray selecting the highlighted toggle on the UI panel through Link.
  • If you added the grab handle on an eye-tracking device, target the handle, pinch to grab it, and move your hand. Confirm that the panel follows the handle.
    Tracked hand in a pinch pose below the UI panel and its grab handle through Link.
For Link setup, see Meta Horizon Link.
Build your app as an APK and deploy it directly to the headset over USB. This Quickstart uses Build and Run for native on-device validation. Before release, test a device build on a Meta Quest headset.
Best for: Native on-device validation before release.
Limitations: Unity compiles the project, packages an APK, transfers it over USB, and launches it. To test a change with this method, create and deploy another build.
Before testing on a headset, make sure hand tracking is enabled on the device. On the headset, go to Settings > Movement tracking > Hand and body tracking and turn it on. Leave Auto Switch Between Hands And Controllers selected so you can freely switch input methods.
Connect your headset
  1. Connect your headset to your computer with a data-capable USB-C cable.
    Illustration of a cable being plugged into a computer.
  2. If you have not yet enabled Developer Mode and USB debugging, follow Software Setup.
Open Build Profiles
  1. In Unity, open File > Build Profiles.
    Build Profiles window open with the Android platform active and the Build Profiles tab highlighted.
  2. Under Platforms, select Meta Quest and click Enable Platform. If the profile is already installed, click Switch Platform.
    Build Profiles window with Meta Quest selected under Platforms and the Enable Platform button highlighted.
  3. Click Open Scene List, select the scenes to include, and click Add Open Scenes.
    Build Profiles Scene List with a scene checked, Meta Quest marked Active, and Add Open Scenes highlighted.
    The Build Profiles window shows Meta Quest marked Active and the scene in Scene List.
Select your device
  1. In the Build Profiles window, open the Run Device dropdown and select your Meta Quest headset.
    Run Device dropdown listing device choices, an IP option, and a connected Meta Quest headset.
    The Run Device dropdown lists the connected headset.
  2. If your headset does not appear, click Refresh. If it still does not appear, confirm that the data cable is connected and that you completed Software Setup.
    Run Device dropdown set to a connected Meta Quest headset with the Refresh button highlighted.
Build and Run
Use these steps to build and test the interactions from Interaction Setup on your headset.
  1. In the Build Profiles window, click Build and Run.
  2. In the file dialog, choose a location and filename for the APK. Wait while Unity compiles your project, builds the APK, deploys it to the headset, and launches it.
  3. Put on the headset and confirm that the app displays your UI.
    In-headset view of the UI panel with a button, toggle, and slider in the room.
  4. Poke the button and confirm that it responds.
    Tracked hand poking the button on the UI panel in the headset.
  5. Use a hand ray and pinch to select the button or move the slider. Confirm that the selection registers or the slider thumb moves.
    Tracked hand pinching with a ray pointed at the slider on the UI panel in the headset.
  6. Select the toggle and confirm that its state changes.
    Tracked hand ray selecting the highlighted toggle on the UI panel in the headset.
  7. If you added the grab handle on an eye-tracking device, target the handle, pinch to grab it, and move your hand. Confirm that the panel follows the handle.
    Tracked hand in a pinch pose below the UI panel and its grab handle in the headset.
For any troubleshooting issues, see:

Next: Next Steps →