我仍在尝试在另一个ide(visual studio)中使用arcore作为原生android应用程序,而不是android studio。这就是为什么我需要“diy”很多东西(比如在我的apk包中手动添加arcore依赖项)。到目前为止,我取得了一些进展,但ar会话的创建仍然失败。
首先,它会给出以下错误消息:
system.err:java.lang.RuntimeException:应用程序清单必须
包含元数据com.google.ar.core.min_apk_version system.err:at
com.google.ar.core.sessioncreatejnihelper.getminapkversion(sessioncreatejnihelper.java:62)
第三方/ar core/ar/core/android/sdk/session\u create.cc:正在调用
GetMinapkversion失败。
我遵循了消息中给出的建议,并在androidmanifest.xml中添加了以下行:
<meta-data android:name="com.google.ar.core.min_apk_version" android:value="24"/>
执行此操作后,第一个错误将被解决,但它会产生一个新错误:
[blaze out/android-armeabi-v7a-opt/genfiles/third-party/ar core/ar/core/android/arcore-c-u-shim-u-function-u-impls.inc:375]
检查失败:表达式=“false”未能调用函数:
arsession_createimplementation,此函数版本:171127000
高于请求的最低APK版本
我无法摆脱这个错误。有人知道原因吗?函数版本高于请求的min-apk版本是什么意思?
最佳答案
我自己找到答案:
arcore 1.1要求应用程序的androidmanifest.xml中必须包含以下元数据。请参阅arcore的aar包中的androidmanifest.xml。
<meta-data android:name="com.google.ar.core.min_apk_version" android:value="180226000" />
android studio将把这些元数据合并到最终应用程序的android manifest.xml中,但是visualstudio不进行任何清单合并。所以解决方案是手动将其添加到清单中。
ArSession现在已成功创建。
关于android - 将ARCore 1.1.0与NativeActivity结合使用并与其他IDE一起构建(Visual Studio 2015/2017),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49823299/