DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
Mountain View desk7 min

Set Up Location-Aware AR in a Unity Android App

A practical Unity workflow for ARCore Geospatial on Android, from Cloud authorization and permissions to capability checks, altitude models, runtime anchors and Geospatial Creator.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

ARCore Geospatial in this workflow means a Unity application built for Android with AR Foundation and ARCore Extensions. It is not a guide to embedding Unity inside an independently developed Kotlin or Java app. To use location-anchored AR, configure the Unity AR stack, authorize the ARCore API through Google Cloud, enable Geospatial mode, obtain the required user consent and precise location permission, check device support, then resolve and validate anchors on the handset.

What you need before enabling Geospatial

A Unity AR Foundation project

Start with a Unity project configured for AR Foundation and its ARCore provider, then add ARCore Extensions for AR Foundation. Google’s setup guidance assumes familiarity with AR concepts and configuring an AR session. In an existing app, first confirm that its AR session and camera work before adding location-anchored content.

As an Amazon Associate I earn from qualifying purchases.

A Google Cloud project

Enable the ARCore API in a new or existing Google Cloud project. The API is used to host, store, and resolve Geospatial anchors. Google prefers keyless authorization and also supports API-key authorization; choose the method that fits the app’s deployment and current Cloud configuration. Do not commit authorization credentials to source control.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Google’s setup pages do not establish a complete tested compatibility matrix for Unity Editor, AR Foundation, the ARCore XR Plug-in, ARCore Extensions, Android Gradle Plugin, and target SDK. Verify the versions as a combination for your project rather than assuming that one documented version covers the entire stack.

#1 Best Overall
Yojaro 4Pack Silicone Suction Phone Case Mount, Silicon Adhesive Smartphones Stand Sticky, Hands-Free Phone Accessories Holder for Selfies and Videos (Black & White & Translucent & Light Pink)
  • 【Strong Adsorption】The inspiration of the silicone phone suction case comes from the adhesive force of the octopus. Each suction cup phone mount is 3.15 inches long and 2.17 inches wide, with 24 independent suction cups providing a stronger and more stable suction force, so you don't have to worry about your phone falling during use.
  • 【Back of Phone Suction Grip】Remove the adhesive film on the phone suction cup and stick it on the phone case. You can then fix the phone on any smooth surface, which is very convenient. (The phone suction cup cannot be removed and reused after being attached to the phone case. It is recommended to attach it to a regular phone case, not a valuable one.)
  • 【Widely Used】Our non-slip silicone phone sticky grip mount attaches to almost any flat phone case and make it compatible with common mobile phones such as iPhone and Android.You can shoot, watch videos or video calls in the kitchen, gym, dance studio, bathroom and other places.
  • 【Capture the Wonderful Picture】Whether you are a TikTok creator or just like to share videos and photos, this phone suction cup can help you hands-free capture wonderful videos and photos for sharing with friends.
  • 【Note】You can fix the phone suction cup on a smooth surface such as a mirror or glass. If necessary, wipe the suction cup with a damp cloth to obtain stronger suction. Before releasing your hand, make sure the phone is firmly fixed. (Not applicable to rough walls, wooden surfaces, and other uneven surfaces)

Enable Geospatial in Unity and the session

  1. In Unity, open Edit > Project Settings > XR Plug-in Management > ARCore Extensions. Under Optional Features, enable Geospatial.

  2. Create an ARCoreExtensionsConfig asset from Assets > Create > XR > ARCore Extensions Config.

  3. Set the asset’s Geospatial Mode to Enabled, then assign the config to the ARCore Extensions GameObject in the scene.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Enabling the optional feature and setting the session configuration are both required; enabling only one does not complete the setup.

Get consent, location permission, and device support right

Explain device-data use and request precise location

Show the required user prompt acknowledging and allowing device-data use, and obtain precise location permission. When Geospatial mode is enabled, ARCore Extensions requests location permission through ARCoreExtensions.Update(). If the user does not grant precise location, the session cannot resume and can terminate with a “permission not granted” error. Explain the consequence in the app’s permission flow and provide a clear way to retry: after denial, restarting the app is required for the permission request to be triggered again.

Check Geospatial capability before configuring the session

General ARCore support does not guarantee Geospatial support on a particular Android device. Before configuring the session for Geospatial, call AREarthManager.IsGeospatialModeSupported(). If the result is FeatureSupported.Unsupported, do not attempt to enable Geospatial mode; show an appropriate fallback or explain that the feature is unavailable on that handset.

Rank #2
Apple EarPods Headphones with USB-C Plug, Wired Ear Buds with Built-in Remote to Control Music, Phone Calls, and Volume
  • SUPERIOR COMFORT — Unlike traditional circular ear buds, the design of EarPods is defined by the geometry of the ear. Which makes them more comfortable for more people than any other ear bud–style headphones.
  • HIGH-QUALITY AUDIO — The speakers inside EarPods have been engineered to maximize sound output and minimize sound loss, which means you get high-quality audio.
  • BUILT-IN REMOTE — EarPods with USB-C plug also include a built-in remote that lets you adjust the volume, control the playback of music and video, and answer or end calls with a pinch of the cord.
  • COMPATIBILITY — Works with all devices that have a USB-C port.
  • INTEGRATED MICROPHONE — A built-in microphone precisely captures your voice while you’re on the phone, taking a FaceTime call, or summoning Siri — so you’re always heard loud and clear.

Assess coverage and wait for a useful pose

Geospatial combines GPS and Visual Positioning System (VPS) data. Google describes VPS as complementary to GPS: it can help in places such as indoors or dense urban areas where GPS accuracy may be low, while outdoor GPS may be adequate where VPS is unavailable. Query AREarthManager.CheckVpsAvailability() for VPS availability at the user’s location, and make the experience’s behavior depend on the result rather than assuming coverage everywhere.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Google’s Android Unity guide, last updated in 2026, describes typical VPS accuracy as approximately 5 meters positionally and 5 degrees rotationally. These are typical-condition figures, not a guarantee for every place, device, or scene. Pose accuracy can improve after startup; read ARCoreEarthManager.CameraGeospatialPose accuracy and defer or adapt precision-sensitive rendering until the pose is suitable for the experience.

Choose the anchor altitude model that matches the content

Google documents three anchor types. The key decision is the height reference: WGS84 uses an ellipsoid altitude supplied by the app, while Terrain and Rooftop use Google location data and resolve asynchronously.

Anchor type Altitude reference and input Resolution and suitable use
WGS84 The app supplies latitude, longitude, and altitude in meters above the WGS84 ellipsoid, plus rotation. Use ARAnchorManagerExtensions.AddAnchor() while Earth tracking is active. Suitable when the app has a correctly converted absolute altitude and needs explicit height control.
Terrain The app supplies latitude, longitude, and altitude above terrain. Use ResolveAnchorOnTerrainAsync() and inspect the promise or result state before attaching content. Suitable for ground-relative placements.
Rooftop The app supplies latitude, longitude, and altitude above a rooftop. Use ResolveAnchorOnRooftopAsync() and handle resolution states. Suitable for roof-relative placements; if the location is not on a building, the API falls back to terrain altitude.

Google recommends Terrain or Rooftop when those height references fit the experience because their heights are determined using Google Maps data. WGS84 altitude is not the same as a map’s ground elevation, so do not assume that ellipsoid altitude zero corresponds to local ground. For content that must attach to a building itself, Google recommends a hit-test with Streetscape Geometry rather than treating a rooftop anchor as a building-surface attachment.

Resolve anchors at runtime

  1. Wait until the AR session is ready and Earth tracking is active before creating a WGS84 anchor or starting a Terrain or Rooftop resolution.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  2. Call the API that matches the chosen height model: ARAnchorManagerExtensions.AddAnchor(), ResolveAnchorOnTerrainAsync(), or ResolveAnchorOnRooftopAsync().

    Rank #3
    PopSockets Adhesive Phone Grip, Holder- Black
    • Secure Hold: Our PopSockets adhesive phone grip gives your cell phone a secure, comfortable hold in hand to help prevent drops while texting, taking photos, or scrolling on the go. Designed to stick firmly to most phone cases and devices.
    • Hands-Free Made Easy: Easily turn your PopSocket into a phone stand to prop up your phone anywhere, perfect for watching videos, video calls, or following recipes. A must-have phone holder that keeps your device secure and ready for anything.
    • Compatibility: Works with all phones, tablets, and Kindles. Sticks best to smooth, hard plastic cases and may not adhere to silicone or textured cases. Easily swap your PopTop to change up your style.
    • Black PopSockets: Simple, refined, and endlessly versatile. A timeless essential for any phone.
    • Travel Must-Have for People On the Go: A must-have travel accessory for flights, flying, airports, air travel, airplanes, planes, international trips, cruises, and long travel days. Key gadget for your airport haul, travel accessories and must-haves.
  3. For Terrain and Rooftop, check the asynchronous promise or result state. Attach or reveal dependent content only when resolution has succeeded, and provide a failure or waiting state rather than assuming the anchor exists immediately.

  4. Use the camera’s geospatial pose accuracy to decide when to reveal content that requires precise placement; avoid making an early, unstable pose look final.

Use Geospatial Creator for placements authored in the editor

Geospatial Creator is an optional editor workflow for locations known in advance. It adds scene placeholders that become runtime Geospatial anchors; it does not replace runtime ARCore setup. The Creator quickstart requires Unity 2021.3 or newer and supports Android or iOS editor targets, not other platforms.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Set up an editor preview

  1. Enable both Geospatial and Geospatial Creator in ARCore Extensions settings.

  2. Add Cesium for Unity and configure Google Map Tiles API access to preview the area in the Unity Editor. The Creator quickstart labels Cesium 1.1.0 as its current recommended version; check the live guide and current Cesium releases because that recommendation may change.

  3. Add exactly one Geospatial Creator Origin to the scene and set its georeference.

    Rank #4
    360° Rotating Stainless Steel Phone Tether Tab (Silvery 3-Pack) - Universal for iPhone & Other Phones (Fits Wristbands/Necklaces/Crossbody Straps)
    • [360 ° Flexible Rotation Design] Comes with a rotatable lanyard ring that supports 360 ° free rotation, effectively solving the problem of twisted and tangled lanyards
    • [Wide compatibility] The ultra-thin 0.02-inch design does not block the charging port at all, and both wired and wireless charging can be used directly without removing the pad. Compatible with most smartphones such as iPhone, compatible with various wristbands, lanyards, crossbody straps, and keychains
    • [Durable and Portable Material] Premium rust-resistant stainless steel material with good flexibility, which not only avoids scratching the phone case, but also has excellent anti rust and anti fading performance
    • [Multi scenario Practical] Paired with a lanyard or wristband, hands-free use can be achieved. The phone is within reach and not easily dropped, ideal for daily commuting and outdoor activities. Suitable for full coverage phone cases, does not support half coverage phone cases
    • [Quality Service] If you find any damage or other issues with the product upon receipt, please contact us immediately. We will handle it quickly
  4. Place Geospatial Creator Anchors with latitude, longitude, and height, then make visible geometry a child of the relevant anchor.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The map tiles are for editor visualization, while the ARCore Geospatial API is used at runtime. In the quickstart’s ordinary setup, the Cesium map-tileset object is tagged EditorOnly by default, so the preview is not downloaded and rendered at runtime.

Understand Creator height and origin behavior

Creator anchors can use Terrain, Rooftop, or WGS84 height. Terrain and Rooftop heights are determined at runtime; a WGS84 altitude field is used for editor visualization and may need adjustment because tile ground elevation and VPS-reported height can differ by several meters. Keep the origin near the authored placements: Google warns that coordinate-conversion inaccuracies may occur at distances over 20 km and recommends using multiple scenes and origins for long distances. This is a documented warning, not a hard universal boundary.

Choose between editor-authored and runtime-selected anchors

Approach Best fit What the app must handle
Geospatial Creator placeholders Placements known ahead of time that benefit from map-tile visualization in the Unity Editor. Configure the Creator preview and scene origin; at runtime, wait for the session and for each placeholder to create or resolve an ARGeospatialAnchor through ARAnchorManager.
Runtime API anchors Locations selected or generated while the app is running. Call the appropriate ARAnchorManager method and handle asynchronous result states for Terrain and Rooftop anchors.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshoot common Geospatial problems

  • Geospatial is unavailable: Check IsGeospatialModeSupported(). Support for ARCore generally is not enough to establish Geospatial capability.

  • The session terminates after a permission denial: The user must grant precise location for the session to resume. Explain why it is needed and restart the app to trigger the permission request again.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • VPS is unavailable: Check CheckVpsAvailability(). In an outdoor location, GPS may still meet the experience’s accuracy needs; decide based on the placement tolerance.

    Best Value
    Anteel 2 Pack Silicone Suction Cup Phone Case Mount Double Sided, Hands-Free Silicon Phone Grip with Higher Suction Power for Selfies and Videos, Non Slip Phone Accessories (LightPink&White)
    • 【PKYAA Double Sided Silicone Suction Phone Case Mount】PKYAA With Double Sided 40 Strong and Reliable individual suction cups, PKYAA provides a thicken and upgraded universal silicon suction mount for your phone.
    • 【Friendly to Content Creators】If you are a content creator or an online influencer, you can create videos anywhere with this suction mount completely hands free with this silicone cell phone mount for cases.
    • 【HANDS-FREE & Adhere to Mirrors】This Double Sided silicone suction phone case mount allows you to stick your phone to the mirror easily. No longer holding your phone in one hand to watch video tutorials while making up.
    • 【Strong Grip on the Smooth Surface】You can easily hang your phone anywhere with a smooth surface. All you do is you clean off your phone and smooth surface. It is STURDY and it not only sticks to mirrors, it also sticks to windows, it sticks to refrigerators, tiles and other clean, flat surfaces.
    • 【Press Down Firmly Every 30 Minutes】Use your palm or fingers to press the phone down firmly and check it's secure before letting go. Apply even pressure for a few seconds to allow the suction cup to adhere properly. To maintain the grip and prevent accidental falls, it's a good practice to periodically reapply pressure to the suction cup.
  • Anchored content drifts or jumps at startup: Let VPS refine the camera pose and use CameraGeospatialPose accuracy to gate or adapt rendering.

  • Content appears at the wrong height: Confirm whether the supplied value is WGS84 ellipsoid altitude, height above terrain, or height above rooftop. Also account for the possible several-meter difference between editor tile elevation and VPS-reported height in Creator placements.

  • The camera view is black with URP: Google’s Creator quickstart says the AR Background Renderer Feature may need to be added to each URP Renderer.

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Editor map tiles appear magenta: The quickstart recommends installing Shader Graph when Cesium tiles load magenta, particularly with the built-in renderer.

  • Far-away Creator placements are inaccurate: Keep placements close to the scene’s georeference origin; for long distances, use multiple scenes and origins.

Validate on the target handset

Run the finished app on the specific Android device you intend to support. Confirm Geospatial capability, the consent and precise-location permission path, VPS availability at the test location, and anchor resolution behavior. Test the chosen altitude model on the actual surface and observe pose accuracy before judging placement. A handset category alone cannot establish support; verify the exact device.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.