| /**************************************************************************** |
| ** |
| ** Copyright (C) 2020 The Qt Company Ltd. |
| ** Contact: https://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 https://www.qt.io/terms-conditions. For further |
| ** information use the contact form at https://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: https://www.gnu.org/licenses/fdl-1.3.html. |
| ** $QT_END_LICENSE$ |
| ** |
| ****************************************************************************/ |
| |
| /*! |
| \page android-publishing-to-googleplay.html |
| \title Publishing to Google Play |
| \brief Provides instructions to prepare your application for publishing. |
| |
| \l{Qt for Android} provides a complete solution to develop, build, and package |
| your applications for Android. Most of these tasks, especially packaging and |
| deployment are handled by Qt Creator providing rich developer experience. |
| |
| Every time you run the application using Qt Creator, an Android Application |
| Package (APK) is created and deployed onto the target of your choice |
| (device or emulator). With few minor changes to packaging settings, you can |
| publish your application on Google Play. The following instructions guide you |
| to create an \c{.apk} that can go live on Google Play: |
| \list 1 |
| \li Open your project with Qt Creator 4.11 or later choosing a \c{Release Build}. |
| |
| \li Select \uicontrol Projects > \uicontrol Build > \uicontrol {Build Android APK} |
| > \uicontrol {Create Templates} to create the Android package template files |
| such as \c{AndroidManifest.xml} which is the main file of concern here. |
| |
| \li Check for the following settings in \c{AndroidManifest.xml}: |
| |
| \list |
| \li Set \uicontrol{Minimum required SDK} to API 21 or later. |
| |
| \li Set \uicontrol{Application name} and \uicontrol{Application icon}. |
| |
| \li Check the \uicontrol{Permissions} list has all the required permissions. |
| |
| \li Check the \uicontrol{Features} list has the software or hardware |
| features that your application depends on, such as GPS or NFC. |
| \endlist |
| |
| For more information, see |
| \l{Qt Creator: Editing Manifest Files}{editing the Manifest Files in Qt Creator}. |
| |
| \note By default, Qt adds the permissions and the features based on the module |
| dependencies of your application. If you do not want these default permissions |
| and features, either deselect the checkboxes |
| \uicontrol{Include default permissions for Qt modules} and |
| \uicontrol{Include default features for Qt modules}, or remove the following |
| part from the \c{AndroidManifest.xml} file: |
| |
| \badcode |
| <!-- The following comment will be replaced upon deployment with default permissions based on the dependencies of the application. |
| Remove the comment if you do not require these default permissions. --> |
| <!-- %%INSERT_PERMISSIONS --> |
| |
| <!-- The following comment will be replaced upon deployment with default features based on the dependencies of the application. |
| Remove the comment if you do not require these default features. --> |
| <!-- %%INSERT_FEATURES --> |
| \endcode |
| |
| For information on the manifest XML format, see \l{Android: App Manifest}. |
| |
| \li Set up a \l{Android: Android keystore system}{keystore} to sign your |
| \c{.apk} file. You can create a new keystore if you do not have one. For more |
| information, see \l{Qt Creator: Specifying Settings for Packages} |
| {Specifying Settings for Packages in Qt Creator}. |
| |
| \li Locate the generated package: |
| |
| \list |
| \li For APK packages, locate the \c{.apk} package at: |
| |
| \badcode |
| <$BUILD_DIR>/android-build/build/outputs/apk/release/android-build-release.apk |
| \endcode |
| |
| \note In Qt Creator, select \uicontrol{Projects} > \uicontrol{Build} |
| > \uicontrol{Build Steps} > \uicontrol{Build Android APK} > |
| \uicontrol{Open package location after build} to build the |
| application's \c{.apk} and open the directory containing the |
| package. |
| |
| \li For AAB packages, select \uicontrol{Projects} > \uicontrol{Build} |
| > \uicontrol{Build Steps} > \uicontrol{Build Android APK} > |
| \uicontrol{Build .aab (Android App Bundle)} for Qt Creator to generate |
| the \c{.aab} file, then locate the package at: |
| |
| \badcode |
| <$BUILD_DIR>/android-build/build/outputs/bundle/release/android-build-release.aab |
| \endcode |
| |
| \endlist |
| |
| \li Log into the \l{Google Play Developer Console} and upload either of |
| \c{.apk} or \c{.aab} files, along with a description and screen captures |
| resembling the usage of your application. |
| \endlist |
| |
| For more information on packaging, see \l{Deploying an Application on Android}. |
| */ |