One Logo Pool Ball
ARKit · IOS API REFERENCE

ARSession

class · iOS 11.0+ · SDK 27.1

class ARSession

Members (24)

method · iOS 11.0+

add

TypeScript
add(anchor: ARAnchor): void
Swift declaration
func add(anchor: ARAnchor)
method · iOS 26.0+

captureHighResolutionFrame

TypeScript
captureHighResolutionFrameUsingCompletion(photoSettings: (_AVFoundation_AVCapturePhotoSettings) | null, completion: ((arg0: (ARFrame) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func captureHighResolutionFrame(using photoSettings: AVCapturePhotoSettings?) async throws -> ARFrame
method · iOS 16.0+

captureHighResolutionFrame

TypeScript
captureHighResolutionFrameCompletion(completion: ((arg0: (ARFrame) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func captureHighResolutionFrame() async throws -> ARFrame
method · iOS 12.0+ · Deprecated in iOS 27.0

createReferenceObject

TypeScript
createReferenceObject(transform: SDKHandle, center: SDKHandle, extent: SDKHandle, completionHandler: ((arg0: (ARReferenceObject) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func createReferenceObject(transform: simd_float4x4, center: simd_float3, extent: simd_float3) async throws -> ARReferenceObject
method · iOS 12.0+

getCurrentWorldMap

TypeScript
getCurrentWorldMap(completionHandler: ((arg0: (ARWorldMap) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func currentWorldMap() async throws -> ARWorldMap
method · iOS 14.0+

getGeoLocation

TypeScript
getGeoLocation(position: SDKHandle, completionHandler: ((arg0: { latitude: number; longitude: number }, arg1: number, arg2: (NativeError) | null) => void)): void
Swift declaration
func geoLocation(forPoint position: simd_float3) async throws -> (CLLocationCoordinate2D, CLLocationDistance)
init

init

TypeScript
static init(): ARSession
Swift declaration
init()
method · iOS 11.0+

pause

TypeScript
pause(): void
Swift declaration
func pause()
method · iOS 13.0+

raycast

TypeScript
raycast(query: ARRaycastQuery): Array<ARRaycastResult>
Swift declaration
func raycast(_ query: ARRaycastQuery) -> [ARRaycastResult]
method · iOS 11.0+

remove

TypeScript
remove(anchor: ARAnchor): void
Swift declaration
func remove(anchor: ARAnchor)
method · iOS 11.0+

run

TypeScript
run(configuration: ARConfiguration, options?: ARSession_RunOptions): void
Swift declaration
func run(_ configuration: ARConfiguration, options: ARSession.RunOptions = [])
method · iOS 11.3+

setWorldOrigin

TypeScript
setWorldOrigin(relativeTransform: SDKHandle): void
Swift declaration
func setWorldOrigin(relativeTransform: simd_float4x4)
method · iOS 13.0+

trackedRaycast

TypeScript
trackedRaycast(query: ARRaycastQuery, updateHandler: ((arg0: Array<ARRaycastResult>) => void)): (ARTrackedRaycast) | null
Swift declaration
func trackedRaycast(_ query: ARRaycastQuery, updateHandler: @escaping ([ARRaycastResult]) -> Void) -> ARTrackedRaycast?
method · iOS 13.0+

update

TypeScript
update(collaborationData: ARSession_CollaborationData): void
Swift declaration
func update(with collaborationData: ARSession.CollaborationData)
get · iOS 11.0+

configuration

TypeScript
get configuration(): (ARConfiguration) | null
Swift declaration
@NSCopying var configuration: ARConfiguration? { get }
get · iOS 11.0+

currentFrame

TypeScript
get currentFrame(): (ARFrame) | null
Swift declaration
@NSCopying var currentFrame: ARFrame? { get }
get · iOS 11.0+

delegate

TypeScript
get delegate(): (SDKHandle) | null
Swift declaration
weak var delegate: (any ARSessionDelegate)? { get set }
set · iOS 11.0+

delegate

TypeScript
set delegate(value: (Implements<ARSessionDelegate> | SDKHandle) | null)
Swift declaration
weak var delegate: (any ARSessionDelegate)? { get set }
get · iOS 11.0+

delegateQueue

TypeScript
get delegateQueue(): (_Dispatch_DispatchQueue) | null
Swift declaration
var delegateQueue: dispatch_queue_t? { get set }
set · iOS 11.0+

delegateQueue

TypeScript
set delegateQueue(value: (_Dispatch_DispatchQueue) | null)
Swift declaration
var delegateQueue: dispatch_queue_t? { get set }
get · iOS 13.0+

identifier

TypeScript
get identifier(): string
Swift declaration
var identifier: UUID { get }
get · iOS 27.0+

viewLayer

TypeScript
get viewLayer(): (_QuartzCore_CALayer) | null
Swift declaration
weak var viewLayer: CALayer? { get set }
set · iOS 27.0+

viewLayer

TypeScript
set viewLayer(value: (_QuartzCore_CALayer) | null)
Swift declaration
weak var viewLayer: CALayer? { get set }
get · iOS 27.0+

viewRotationAngle

TypeScript
get viewRotationAngle(): (number) | null
Swift declaration
@nonobjc var viewRotationAngle: CGFloat? { get }

The angle, in degrees, to rotate a view by so the `ARFrame` it displays stays level with the horizon as the device rotates. Updates in step with the system UI rotation. The value is normalized to `[0, 360)` (`0` at LandscapeRight, `90` at Portrait, `180` at LandscapeLeft, `270` at PortraitUpsideDown), or `nil` until the angle is available (`viewLayer` is set and on screen). Read it on demand; implement `session(_:didChangeViewRotationAngle:)` to react to changes.

Skipped declarations

No declarations were skipped in this snapshot.

All ARKit types →