如何在Qt项目中设置Android目标版本?

How to set Android target version in Qt project?

在 qmake 中,可以定义一个变量 VERSION,这将导致 Windows 目标上的可执行版本号发生变化,这可以在Windows.

上的可执行文件

我正在寻找以类似方式在应用程序管理器中修改 Android 设备上可见的版本的可能性。 Qt 是否提供任何自动更新可用于自动构建的信息的方法?我唯一发现的是 Qt 允许在 Qt Creator 的特殊编辑器 Window 中打开 AndroidManifest.xml,这是 AFAICS 不能用于自动化。

我正在使用 APKTool 来执行此操作。

QtCreator 生成你的apk 文件后,你可以使用apktool 反编译apk(解压成文件和文件夹的结构)。然后,您可以轻松地修改一个 yaml 文件,该文件在反编译文件夹的根目录中显示为预期的版本号。稍后再次使用apktool重新编译apk。最后您需要对其进行签名,然后您就完成了:apk 已准备就绪,可以使用并将显示您从 Android 应用程序管理器指定的新版本。

不是很明显,但最终效果很好。使用命令行完成一次后,很容易将其自动化(我通过 C++ 程序完成,但 Python 也可以轻松完成)。

QTBUG-44455 已修复。现在可以使用 ANDROID_VERSION_NAMEANDROID_VERSION_CODE 变量通过 qmake 定义 Android 目标版本。