簡體   English   中英

Qt for Android 和 ARCore 應用程序沖突

[英]Qt for Android and ARCore Application Clashes

我正在嘗試使用 Qt 為 Android 創建 ARCore 應用程序。

我能夠運行 ARCore 示例 (hello_ar_java,hello_ar_c) 和 Qt 示例 (jnimessenger)。 但是兩者結合在一起,它就會崩潰。

我從Qt JNI Messenger Example開始。 我從build.gradle模板目錄(~/Qt/5.15.0/android/src/android/templates/build.gradle)添加了 build.gradle。 然后我將implementation 'com.google.ar:core:1.18.0'添加到dependencies

dependencies {
    implementation 'com.google.ar:core:1.18.0'
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
}

但它因這個錯誤而崩潰。

I le.jnimessenge: Late-enabling -Xcheck:jni
E le.jnimessenge: Unknown bits set in runtime_flags: 0x8000
W System  : ClassLoader referenced unknown path:
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libc++_shared.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5Core_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5AndroidExtras_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5Gui_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5Network_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5Qml_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5QmlModels_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5Quick_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5QmlWorkerScript_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5QuickTemplates2_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libQt5QuickControls2_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libplugins_platforms_qtforandroid_armeabi-v7a.so'
I Qt JAVA : Can't find '/data/app/org.qtproject.example.jnimessenger-aiGQbBP6wlwSUCHGO1oUDA==/lib/arm64/libplugins_bearer_qandroidbearer_armeabi-v7a.so'
W System.err: java.lang.Exception:
W System.err:   at org.qtproject.qt5.android.bindings.QtLoader.loadApplication(QtLoader.java:268)
W System.err:   at org.qtproject.qt5.android.bindings.QtLoader.startApp(QtLoader.java:505)
W System.err:   at org.qtproject.qt5.android.bindings.QtActivityLoader.onCreate(QtActivityLoader.java:166)
W System.err:   at org.qtproject.qt5.android.bindings.QtActivity.onCreateHook(QtActivity.java:266)
W System.err:   at org.qtproject.qt5.android.bindings.QtActivity.onCreate(QtActivity.java:273)
W System.err:   at android.app.Activity.performCreate(Activity.java:7825)
W System.err:   at android.app.Activity.performCreate(Activity.java:7814)
W System.err:   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1306)
W System.err:   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3245)
W System.err:   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3409)
W System.err:   at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
W System.err:   at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
W System.err:   at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
W System.err:   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
W System.err:   at android.os.Handler.dispatchMessage(Handler.java:107)
W System.err:   at android.os.Looper.loop(Looper.java:214)
W System.err:   at android.app.ActivityThread.main(ActivityThread.java:7356)
W System.err:   at java.lang.reflect.Method.invoke(Native Method)
W System.err:   at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
W System.err:   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
I Adreno  : QUALCOMM build                   : 4a00b69, I4e7e888065
I Adreno  : Build Date                       : 04/09/19
I Adreno  : OpenGL ES Shader Compiler Version: EV031.26.06.00
I Adreno  : Local Branch                     :
I Adreno  : Remote Branch                    :
I Adreno  : Remote Branch                    :
I Adreno  : Reconstruct Branch               :
I Adreno  : Build Config                     : S P 8.0.6 AArch64
I Adreno  : PFP: 0x016ee183, ME: 0x00000000
W Gralloc3: mapper 3.x is not supported

我想知道為什么這種依賴會破壞最初工作的 Qt。(我是 Android 的初學者。)

我做錯什么了嗎? 有沒有辦法同時使用 Qt 和 ARCore?

  • Qt:5.15.0
  • QtCreator:4.12.0
  • AR核心:1.18.0
  • Android SDK:從 Android Studio 4.0.1 安裝
  • NDK:21.3.6528147
  • MacOS Catalina:10.15.5
  • Android 設備:像素 3a Android 10

謝謝您的幫助!

我不明白邏輯,但我已經解決了問題。

我選擇了 arm64-v8a。 (項目>構建步驟>ABIs)

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM