android - QtCreator 在生成 APK 时出现 ProcessException

标签 android c++ qt qt5 qt-creator

我有一个现有的 QtCreator 项目,我想在 Android 上运行它。当我使用适用于 Windows 的工具包编译并运行时,一切正常。但是在为 Android 编译应用程序时,我总是在最后一步“构建 Android APK”中出现此错误。

规范:

  • 开发主机:win10 x64
  • andorid comile 平台:23、26、27、28
  • andorid ndk 版本:r19c, r18b
  • java版本:1.8.0_201

错误信息:

:compileDebugAidl FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':compileDebugAidl'.
> java.io.IOException: com.android.ide.common.process.ProcessException: Error while executing process C:\dev\android\sdk-tools-windows-4333796\build-tools\29.0.0-rc1\aidl.exe with arguments {-pC:\dev\android\sdk-tools-windows-4333796\platforms\android-28\framework.aidl -oC:\workspace\projects\build-Proj-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv72_765240-Debug\android-build\build\generated\source\aidl\debug -IC:\dev\Qt\5.12.0\android_armv7\src\android\java\src -IC:\workspace\projects\build-Proj-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv72_765240-Debug\android-build\src -IC:\workspace\projects\build-Proj-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv72_765240-Debug\android-build\aidl -IC:\workspace\projects\build-Proj-Android_for_armeabi_v7a_Clang_Qt_5_12_0_for_Android_ARMv72_765240-Debug\android-build\src\debug\aidl -dC:\Users\user1\AppData\Local\Temp\aidl8241234200511438554.d C:\dev\Qt\5.12.0\android_armv7\src\android\java\src\org\kde\necessitas\ministro\IMinistro.aidl}

由于我能够在 QtCreator 中使用新创建的项目重现此问题,所以一定是我的设置有问题。

我很感谢解决这个问题的每一个提示......

最佳答案

这是 Android SDK Platform Tools 29.0.0 的一个错误。 解决方案是将构建强制降级为使用 v.28.0.3。

在你的构建目录中找到文件,我的是:C:\dev_qt\experiments\build-test_qt_5_13_0_ARMv7-Release\android-build\gradle.properties 并改变 来自:androidBuildToolsVersion=29.0.0 至:androidBuildToolsVersion=28.0.3

确保有 Android SDK Platform Tools 28.0.3 勾选Android studio->Tools->SDK Manager->SDK Tools->Flag 'Show package details'

关于android - QtCreator 在生成 APK 时出现 ProcessException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55491542/

相关文章:

java - 将最近的应用程序加载到 GridView 中

android - 需要 Volley API 调用简化解决方案,从单一方法调用所有 API

c++ - 找不到体系结构 x86_64 mac os 10.13.3 的符号

c++ - 无法在 QList 中添加我的类(class)

android - addview LinearLayout顺序问题

android - ViewPager2 崩溃

c++ - 具有 unique_ptr 和线程的默认 vector 构造函数

c++ - 为什么这在 C++ 中抛出 "CryptoMaterial: this object contains invalid values",但在 python 中工作正常

c++ - Qt/C++ 中的 DHCP 选项

c++ - 如何将小部件(例如 QPushButton)动态添加到设计器内置的布局