/**************************************************************************** ** ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: http://www.qt.io/licensing/ ** ** This file is part of the documentation of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see http://www.qt.io/terms-conditions. For further ** information use the contact form at http://www.qt.io/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: http://www.gnu.org/copyleft/fdl.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \page qtquickcontrols2-deployment.html \title Deploying Qt Quick Controls 2 Applications Deployment of Qt Quick Controls 2 applications is very similar to deployment of other types of Qt applications. However, there are a few factors to consider. \section1 Deploying an Application with Several Styles Suppose you have an application that will be deployed to both Android and Windows devices. To ensure that only the minimum set of files that are necessary for the application to run are deployed to each device, you can use file selectors. For example, your directory structure could look like this: \code resources.qrc main.qml +windows/MyPage.qml +windows/qtquickcontrols2.conf +android/MyPage.qml +android/qtquickcontrols2.conf \endcode In the project above, \c main.qml would import \c QtQuick.Controls, for example, but shouldn't import, say, \c QtQuick.Controls.Material. Any code that is style-specific is moved out into separate files; just as we've done for \c MyPage.qml. The \c +windows/qtquickcontrols2.conf file would contain configuration options specific to the Universal style: \code [Controls] Style=Universal [Universal] Theme=Dark Accent=Red \endcode The \c +android/qtquickcontrols2.conf file would contain configuration options specific to the Material style: \code [Controls] Style=Material [Material] Theme=Light Accent=Brown \endcode \section1 Static Builds For dynamically built applications, it is not necessary to import a specific style that should be usable by that application. For statically built applications, Qt's build system must be involved to ensure that QML plugins function as expected. Specifically, \c qmake uses \c qmlimportscanner to scan the QML files in your application for import statements. For this reason, any styles that should be usable by a statically built application must explicitly import that style. Where the import occurs is up to the developer, but it is recommended to follow the approach mentioned in the \l {Deploying an Application with Several Styles} section, so that only the minimum set of files that are necessary for a particular device are deployed. \sa {Deploying Qt Applications} */