エラーメッセージ
Use of undeclared identifier 'kCLErrorDomain'; did you mean 'SCNErrorDomain'?
エラー発生環境
- OS:Mac
- Xcodeバージョン:11.7
- Unityバージョン:2020.1.13f1, 2020.1.17f1
- ARFoundationバージョン: 4.1.1, 4.1.3
- ARKitXRPluginバージョン:4.1.1, 4.1.3
発生状況
Xcodeでビルドする際に発生しました。
下記環境のプラグインバージョンでは発生していないことが確認できています。
- ARFoundationバージョン: 3.1.10, 4.0.10
- ARKitXRPluginバージョン:3.1.10, 4.0.10
原因
エラーが発生したファイルは「Packages/com.unity.xr.arkit/Runtime/iOS/UnityARKit.m」の91行目部分で、存在しない識別子が使用されているとのこと。
void* UnityARKit_GetCLErrorDomain() {
return (__bridge void*)kCLErrorDomain;
}
ひとつ前のバージョン(4.0.10)と比較するとかなり中身が変わっていました。
対処方法
方法1 フレームワークの追加
ほぼ同一環境の別PCでやったときは発生しなかったので、本来はUnityのビルドでkCLErrorDomainの宣言先フレームワークが追加されているはずですが、それが追加されていないっぽい。
kCLErrorDoaminは「CoreLocation」で宣言されているので、このフレームワークを追加すればよさそう。
方法2 プラグインのバージョン変更
「AR Foundation」および「ARKit XR Plugin」のバージョンを「4.0.10」にすると解決します。
方法3 プラグインのコード変更
おすすめはできないですが、エラーメッセージ通りに「kCLErrorDomain」の部分を「SCNErrorDomain」に変更すると解決します。
投稿者プロフィール
最新の投稿
- 2023年10月9日プログラミング【ライセンス】GPL/LGPLライブラリについて
- 2023年8月19日その他【Pixiv】閲覧注意機能が反映されないときに確認すること
- 2023年4月30日プログラミング【JavaScript】ファイルの保存先をダイアログで指定する方法 – showSaveFilePicker()の使い方
- 2022年10月17日その他「NovelAI Diffusion」を使ってみた (Img2Img)