部署 Qt Quick 控件应用程序#
Qt Quick 控件应用程序的部署与其他类型 Qt 应用程序的部署非常相似。但是,需要考虑一些因素。
部署具有多个样式的应用程序#
假设你有应用程序将被部署到 Android 和 Windows 设备。为了确保每个设备仅部署应用程序运行所需的最小文件集,你可以使用文件选择器。例如,你的目录结构可能如下所示:
resources.qrc main.qml +windows/MyPage.qml +windows/qtquickcontrols2.conf +android/MyPage.qml +android/qtquickcontrols2.conf
在上面的项目中,《main.qml》
将导入《QtQuick.Controls》
,例如,但不应该导入,例如,《QtQuick.Controls.Material》
。任何特定于样式的代码都被移到单独的文件中;就像我们对《MyPage.qml》
所做的那样。
《+windows/qtquickcontrols2.conf》
文件将包含特定于通用样式的配置选项
[Controls] Style=Universal [Universal] Theme=Dark Accent=Red
《+android/qtquickcontrols2.conf》
文件将包含特定于 Material 样式的配置选项
[Controls] Style=Material [Material] Theme=Light Accent=Brown
静态构建#
对于动态构建的应用程序,不需要导入特定样式,该样式可供该应用程序使用。对于静态构建的应用程序,Qt 的构建系统必须参与其中以确保 QML 插件按预期运行。具体来说,《qmake》
使用《qmlimportscanner》
来扫描应用程序中的 QML 文件以查找导入语句。因此,任何需要由静态构建的应用程序使用的样式必须显式导入该样式。导入发生的位置由开发者决定,但建议遵循部署具有多个样式的应用程序部分中提到的方法,以便仅部署特定于特定设备的必要最小文件集。
另请参阅