You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Qt for Android与ARCore集成时应用崩溃问题求助

解决Qt for Android集成ARCore后崩溃找不到库的问题

我完全理解你现在的困扰——单独运行Qt的JNI Messenger示例和ARCore的hello_ar系列demo都正常,可一旦把两者结合,就出现找不到libc++_shared.so、libQt5Core_armeabi-v7a.so这类Qt核心库的崩溃,这确实挺让人摸不着头脑的。结合你的操作步骤和环境信息,问题大概率出在Gradle配置冲突上,特别是ABI过滤和库打包策略的问题,下面给你一步步的解决思路:

1. 修复Gradle的ABI过滤配置

ARCore的依赖可能会改变Gradle默认的ABI打包范围,导致Qt编译生成的特定ABI库没有被包含进APK。你需要在build.gradle的defaultConfig块中明确指定Qt支持的ABI:

android {
    defaultConfig {
        // 保留原有配置,添加如下ndk块
        ndk {
            // 匹配你Qt项目编译的ABI,比如你用到的armeabi-v7a,可同时加上常用的arm64-v8a
            abiFilters 'armeabi-v7a', 'arm64-v8a'
        }
    }
}

这样Gradle就会打包这些指定ABI的库,不会因为ARCore的依赖自动过滤掉Qt的库文件。

2. 处理库文件冲突

Qt和ARCore都依赖libc++_shared.so,如果打包时出现重复,会导致库文件被覆盖或遗漏。你可以在build.gradle中添加打包选项,优先选择其中一方的版本(保持一致即可):

android {
    // 保留原有配置,添加如下packagingOptions块
    packagingOptions {
        pickFirst 'lib/**/libc++_shared.so'
    }
}

3. 调整依赖顺序与扫描范围

确保Qt的libs目录被Gradle正确扫描,建议把本地库的依赖放在ARCore依赖的前面,让Gradle优先处理本地Qt库:

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

4. 确认Qt Creator的构建配置

在Qt Creator中,进入Projects -> Build -> Android APK -> Build Settings,检查以下几点:

  • 确保Build Android APK选项已勾选
  • ABI选择和Gradle中配置的一致(比如armeabi-v7a)
  • 检查Qt构建输出目录(一般是build-xxx-Android_Qt_5_15_0_Clang_Multi_Abi-Release)下的libs文件夹,确认对应ABI的Qt库文件存在

5. 补充ARCore必要的Manifest配置

虽然你的报错是找不到Qt库,但缺少ARCore的必要配置也可能间接导致崩溃。在AndroidManifest.xml中添加以下内容:

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera.ar" android:required="true" />
<meta-data android:name="com.google.ar.core" android:value="required" />

6. 清理缓存后重建

最后,清理项目缓存避免旧配置干扰:

  • 删除Qt项目的build目录
  • 删除Android项目的.build和.gradle目录
  • 在Qt Creator中点击Clean Project,然后Run qmake,再重新构建

按照这些步骤调整后,应该能解决库找不到的崩溃问题,让Qt和ARCore正常协同工作。

内容的提问来源于stack exchange,提问作者Aso Naoki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 22:12:56