AR Foundation (Unity) 的 ARCore 扩展——构建时出错
ARCore Extensions for AR Foundation (Unity) — Error Upon Build
我正在尝试构建一个使用 ARCore 的 Cloud Anchors for AR Foundation 的应用程序。当我将 ARCore Extensions 对象添加到场景并构建时,我收到以下错误。 Help/insight 非常感谢。 (我正在建设 Android。)
ArgumentNullException: Value cannot be null.
Parameter name: key
System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) (at <695d1cc93cca45069c528c15c9fdd749>:0)
Google.XR.ARCoreExtensions.Editor.Internal.AndroidDependenciesHelper.GetAllSessionConfigs () (at Packages/arcore-extensions-package/Editor/Scripts/Internal/AndroidDependenciesHelper.cs:65)
Google.XR.ARCoreExtensions.Editor.Internal.CompatibilityCheckPreprocessBuild.OnPreprocessBuild (UnityEditor.Build.Reporting.BuildReport report) (at Packages/arcore-extensions-package/Editor/Scripts/Internal/ModulesWorkflow/CompatibilityCheckPreprocessBuild.cs:66)
UnityEditor.Build.BuildPipelineInterfaces+<>c__DisplayClass15_0.<OnBuildPreProcess>b__1 (UnityEditor.Build.IPreprocessBuildWithReport bpp) (at <0b8db76a688c4d18a15dd7dfe092a035>:0)
UnityEditor.Build.BuildPipelineInterfaces.InvokeCallbackInterfacesPair[T1,T2] (System.Collections.Generic.List`1[T] oneInterfaces, System.Action`1[T] invocationOne, System.Collections.Generic.List`1[T] twoInterfaces, System.Action`1[T] invocationTwo, System.Boolean exitOnFailure) (at <0b8db76a688c4d18a15dd7dfe092a035>:0)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
好的,我很快就解决了这个问题。
ARCoreExtensions 对象有 4 个必填字段 listed here. I had gotten them all to work except for ARCore Extensions Config, because the object did not exist in the Assets nor Scene dropdown. Then I found these instructions,这让我能够完成 ARCoreExtensions 的必要字段,并成功构建项目。
(注:)
我将整个 ARCore Extensions 包放入 Unity 项目的 Packages 文件夹中,这导致了后来的一些其他问题(与正确的 Window>Package Manager>+ (dropdown)>Add package from disk>package.json
相反)。所以,如果我上面的解释不是实际问题,那么包导入肯定是。
在我的例子中,我需要重新导入示例项目并将位于 cloundanchorexample/configurations 中的配置对象重新连接到场景中 ARCoreExtensions 对象上的配置插槽。
感谢您为我指明正确的方向!
我正在尝试构建一个使用 ARCore 的 Cloud Anchors for AR Foundation 的应用程序。当我将 ARCore Extensions 对象添加到场景并构建时,我收到以下错误。 Help/insight 非常感谢。 (我正在建设 Android。)
ArgumentNullException: Value cannot be null.
Parameter name: key
System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) (at <695d1cc93cca45069c528c15c9fdd749>:0)
Google.XR.ARCoreExtensions.Editor.Internal.AndroidDependenciesHelper.GetAllSessionConfigs () (at Packages/arcore-extensions-package/Editor/Scripts/Internal/AndroidDependenciesHelper.cs:65)
Google.XR.ARCoreExtensions.Editor.Internal.CompatibilityCheckPreprocessBuild.OnPreprocessBuild (UnityEditor.Build.Reporting.BuildReport report) (at Packages/arcore-extensions-package/Editor/Scripts/Internal/ModulesWorkflow/CompatibilityCheckPreprocessBuild.cs:66)
UnityEditor.Build.BuildPipelineInterfaces+<>c__DisplayClass15_0.<OnBuildPreProcess>b__1 (UnityEditor.Build.IPreprocessBuildWithReport bpp) (at <0b8db76a688c4d18a15dd7dfe092a035>:0)
UnityEditor.Build.BuildPipelineInterfaces.InvokeCallbackInterfacesPair[T1,T2] (System.Collections.Generic.List`1[T] oneInterfaces, System.Action`1[T] invocationOne, System.Collections.Generic.List`1[T] twoInterfaces, System.Action`1[T] invocationTwo, System.Boolean exitOnFailure) (at <0b8db76a688c4d18a15dd7dfe092a035>:0)
UnityEditor.BuildPlayerWindow:BuildPlayerAndRun()
好的,我很快就解决了这个问题。
ARCoreExtensions 对象有 4 个必填字段 listed here. I had gotten them all to work except for ARCore Extensions Config, because the object did not exist in the Assets nor Scene dropdown. Then I found these instructions,这让我能够完成 ARCoreExtensions 的必要字段,并成功构建项目。
(注:)
我将整个 ARCore Extensions 包放入 Unity 项目的 Packages 文件夹中,这导致了后来的一些其他问题(与正确的 Window>Package Manager>+ (dropdown)>Add package from disk>package.json
相反)。所以,如果我上面的解释不是实际问题,那么包导入肯定是。
在我的例子中,我需要重新导入示例项目并将位于 cloundanchorexample/configurations 中的配置对象重新连接到场景中 ARCoreExtensions 对象上的配置插槽。
感谢您为我指明正确的方向!