ARCore is back at Google I/O on May 10! Register now.


Stay organized with collections Save and categorize content based on your preferences.
public final enum TrackingFailureReason

Describes possible AR tracking failure reasons.

Inherited Methods

Enum Values


public static final TrackingFailureReason BAD_STATE

Motion tracking lost due to bad internal state. No specific user action is likely to resolve this issue.


public static final TrackingFailureReason CAMERA_UNAVAILABLE

Motion tracking paused because the camera is in use by another application. Tracking will resume once this app regains priority, or once all apps with higher priority have stopped using the camera. Prior to ARCore SDK 1.13, NONE is returned in this case instead.


public static final TrackingFailureReason EXCESSIVE_MOTION

Motion tracking lost due to excessive motion. Ask the user to move the device more slowly.


public static final TrackingFailureReason INSUFFICIENT_FEATURES

Motion tracking lost due to insufficient visual features. Ask the user to move to a different area and to avoid blank walls and surfaces without detail.


public static final TrackingFailureReason INSUFFICIENT_LIGHT

Motion tracking lost due to poor lighting conditions. Ask the user to move to a more brightly lit area. Android 12 (API level 31) or later, the user may have disabled camera access, causing ARCore to receive a blank camera feed.


public static final TrackingFailureReason NONE

Indicates expected motion tracking behavior. Always returned when Camera.getTrackingState() is TrackingState.TRACKING. When Camera.getTrackingState() is TrackingState.PAUSED, indicates that the session is initializing normally.