After upgrading to com.unity.xr.visionos package version 0.4.3, Unity successfully produces an Xcode project but the project build fails with the error below.
com.unity.xr.visionos/Runtime/VisionOSNativeBridge.mm:63:5: error: use of undeclared identifier 'ar_session_set_data_provider_state_change_handler'; did you mean 'ar_session_set_data_provider_state_change_handler_with_queue'?
ar_session_set_data_provider_state_change_handler(session, nullptr, ^(ar_data_providers_t data_providers,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ar_session_set_data_provider_state_change_handler_with_queue
In file included from /Users/ryandawson/Dev/VRProject/Builds/VisionOS/VRProject/Libraries/ARM64/Packages/com.unity.xr.visionos/Runtime/VisionOSNativeBridge.mm:2:
In file included from /Applications/Xcode-beta.app/Contents/Developer/Platforms/XRSimulator.platform/Developer/SDKs/XRSimulator1.0.sdk/System/Library/Frameworks/ARKit.framework/Headers/hand_tracking.h:14:
/Applications/Xcode-beta.app/Contents/Developer/Platforms/XRSimulator.platform/Developer/SDKs/XRSimulator1.0.sdk/System/Library/Frameworks/ARKit.framework/Headers/session.h:67:16: note: 'ar_session_set_data_provider_state_change_handler_with_queue' declared here
AR_EXTERN void ar_session_set_data_provider_state_change_handler_with_queue(
Letting Xcode fix the issue by replacing the ar_session_set_data_provider_state_change_handler with an ar_session_set_data_provider_state_change_handler_with_queue does allow the build to progress, but it fails to link with the following errors:
Undefined symbol: _ar_hand_anchor_get_hand_skeleton
Undefined symbol: _ar_hand_skeleton_get_joint_named
Undefined symbol: _ar_skeleton_joint_get_anchor_from_joint_transform
Undefined symbol: _ar_skeleton_joint_is_tracked
How can I resolve these issues and get my project building again?
This is a VR project using the built-in render pipeline with AR Foundation package 5.0.7. Possibly of note, the XR Hand package is not in this project.