【发布时间】:2021-12-05 11:21:24
【问题描述】:
我在 Windows 7 X64 机器上使用 Qt 5.12,以下是 Qt Creator 4.8 上的 Devices:
如图所示,SDK、NDK 和 JDK 似乎都很好。
通过这条路径,我创建了一个名为“test_1”的简单 QML 项目:
文件 => 新文件或项目 => 应用程序(模板) => Qt Quick 应用程序-空=>项目名称(Test_1)=>(构建系统) qmake => 最低要求 Qt 版本 5.12 => 套件(Android X86、Arm7 和桌面)=> 完成
这是代码:
import QtQuick 2.12
import QtQuick.Window 2.12
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello QML World")
}
SDK包也如下:
这里有什么问题吗?
现在使用 kits 测试程序:
桌面:OK
Android X86或 Arm7 : 失败
下面是红色的编译输出窗口的所有内容:
FAILURE:构建失败并出现异常。
- 出了什么问题: 任务“:processDebugResources”执行失败。 Android 资源链接失败输出:C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:39 : 错误: 'orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density' 与属性 configChanges (attr) 标志不兼容 [locale=4, fontScale=1073741824,键盘=16,keyboardHidden=32,layoutDirection=8192,mcc=1,mnc=2,navigation=64,orientation=128,screenLayout=256,screenSize=1024,smallestScreenSize=2048,touchscreen=8,uiMode=512]。 错误:处理清单失败。
命令:C:\Users\Abbasi.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-4818971-windows.jar\83adb1c826b3da76392f22b7ff050e9c\aapt2-3.2.0-4818971-windows\aapt2。 exe 链接 -I\ C:\Users\Abbasi\AppData\Local\Android\sdk\platforms\android-21\android.jar\ --manifest\ C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build -Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\ -o\ C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi712_0_forAndroid_for_armeabi712_0_forAndroid_for_armeabi_C -Debug\android-build\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\ -R\ @C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7- Debug\android-build\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\ --auto-add-overlay\ --java\ C:\User s\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\ --custom-package\ org.qtproject.example.Test_1\ -0\ apk\ --no-version-vectors 守护进程:AAPT2 aapt2-3.2.0-4818971-windows 守护进程#0 输出:C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml:39: AAPT: 错误: 'orientation|uiMode|screenLayout|screenSize|smallestScreenSize|layoutDirection|locale|fontScale|keyboard|keyboardHidden|navigation|mcc|mnc|density' 与属性 configChanges (attr) 标志不兼容 [locale=4, fontScale=1073741824, keyboard= 16、keyboardHidden=32、layoutDirection=8192、mcc=1、mnc=2、navigation=64、orientation=128、screenLayout=256、screenSize=1024、smallestScreenSize=2048、touchscreen=8、uiMode=512]。
错误:处理清单失败。 命令:C:\Users\Abbasi.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-4818971-windows.jar\83adb1c826b3da76392f22b7ff050e9c\aapt2-3.2.0-4818971-windows\aapt2.exe 链接- I\ C:\Users\Abbasi\AppData\Local\Android\sdk\platforms\android-21\android.jar\ --manifest\ C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1- Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\ -o\ C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7_12\Debug_for_armeabi_v7a_0forAndroid_Qt android-build\build\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\ -R\ @C:\Users\Abbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android -build\build\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\ --auto-add-overlay\ --java\ C:\Users\A bbasi\Desktop\Q_Apps\QML_Apps\Test_1\build-Test_1-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv7-Debug\android-build\build\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\ --custom-package\ org.qtproject.example.Test_1\ -0 \ apk\ --no-version-vectors 守护进程:AAPT2 aapt2-3.2.0-4818971-windows 守护进程#0
尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
通过https://help.gradle.org获得更多帮助
在 7 秒内构建失败 14 个可操作任务:1 个已执行,13 个最新构建 android 包失败! -- 有关详细信息,请使用 --verbose 运行此命令。 13:40:16:进程“C:\Qt\5.12.0\android_armv7\bin\androiddeployqt.exe”以代码 14 退出。构建/部署项目 Test_1 时出错(套件:Android for armeabi-v7a(Clang Qt 5.12 .0 for Android ARMv7)) 执行步骤“Build Android APK”时
我什至选择了android-ndk-r17c-windows-x86_64.zip 并将其替换为 NDK r18b,但结果没有任何变化!
请问有什么问题吗?这不是与我创建项目的路径有关吗? 我认为您也使用 Arm7 套件创建 Android 应用程序,构建应用程序是其创建的一部分。所以一定有办法解决这个问题。同意? 你能帮忙吗。
【问题讨论】:
-
项目是用旧版本的Qt创建的吗?
-
正如我所说,它是 Qt Creator 4.8.0。我不确定,但上次我可以使用这些规范构建应用程序时,API 更高。这个问题不是和 API 有关吗?
-
哪个 API 版本适合您?
-
对于 API 27 和 28,它都可以正常工作并创建 APK 文件。我将测试更多的 API。但是可能会出现的一个问题是,构建的具有高 API 的 apk 文件可能无法在真正的 Android 设备上正常工作! :(
标签: android qt qml linker-errors armv7