From cc106ce56550ebfc7e1808e1b9015f5618d9f5e5 Mon Sep 17 00:00:00 2001 From: Assam Boudjelthia Date: Wed, 8 Apr 2020 15:39:33 +0300 Subject: Android: update Android specific variables docs Android variable are missing from the list of QMake variables... Task-number: QTBUG-80390 Change-Id: Ic10f96687334eea99c0302d7137685b1bf6e56c6 Reviewed-by: BogDan Vatra Reviewed-by: Leena Miettinen --- qmake/doc/src/qmake-manual.qdoc | 188 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 188 insertions(+) (limited to 'qmake/doc/src') diff --git a/qmake/doc/src/qmake-manual.qdoc b/qmake/doc/src/qmake-manual.qdoc index c90092059f..574722d08a 100644 --- a/qmake/doc/src/qmake-manual.qdoc +++ b/qmake/doc/src/qmake-manual.qdoc @@ -905,6 +905,187 @@ to specify a list of libraries that each project needs to link against, and \c QMAKE_LIBS_X11 would be used to extend this list. + \target ANDROID_ABI + \section1 ANDROID_ABI + + \note This variable applies only to Android targets. + + Specifies the Android target ABI. Valid values are: armeabi-v7a, arm64-v8a, + x86, x86_64. + + \target ANDROID_ABIS + \section1 ANDROID_ABIS + + \note This variable applies only to Android targets. + + Specifies a list of Android target ABIs. Valid values are: armeabi-v7a, + arm64-v8a, x86, x86_64. + + \badcode + qmake ANDROID_ABIS="armeabi-v7a arm64-v8a" + \endcode + + \target ANDROID_API_VERSION + \section1 ANDROID_API_VERSION + + \note This variable applies only to Android targets. + + Specifies the Android API level number. For more information, see + \l{Android: Build Numbers}{Android Build Numbers}. + + \target ANDROID_BUNDLED_JAR_DEPENDENCIES + \section1 ANDROID_BUNDLED_JAR_DEPENDENCIES + + \note This variable applies only to Android modules. + + This is useful when writing a Qt module. It specifies a list of pre-bundled + dependencies used by the module in a \c .jar format, for example: + + \badcode + ANDROID_BUNDLED_JAR_DEPENDENCIES += jar/QtAndroid.jar + \endcode + + \target ANDROID_DEPLOYMENT_DEPENDENCIES + \section1 ANDROID_DEPLOYMENT_DEPENDENCIES + + \note This variable applies only to Android targets. + + By default, \l androiddeployqt will detect the dependencies of your + application. However, since run-time usage of plugins cannot be detected, + there could be false positives, as your application might depend on any + plugin that is a potential dependency. If you want to minimize the size of + your \c APK, it's possible to override the automatic detection using the + this variable. This should contain a list of all Qt files which need to be + included, with paths relative to the Qt install root. + + \note Only the Qt files specified with this variable are included. Failing + to include all the correct files can result in crashes. It's also important + to make sure the files are listed in the correct loading order. This variable + provides a way to override the automatic detection entirely, so if a library + is listed before its dependencies, it will fail to load on some devices. + + \target ANDROID_DEPLOYMENT_SETTINGS_FILE + \section1 ANDROID_DEPLOYMENT_SETTINGS_FILE + + \note This variable applies only to Android targets. + + Specifies the path to the \c {android-deployment-settings.json} file needed + by \l androiddeployqt and \c androidtestrunner. This overrides the path to + the settings file generated by qmake, thus you have to make sure to provide + a valid settings file. + + \target ANDROID_EXTRA_LIBS + \section1 ANDROID_EXTRA_LIBS + + \note This variable applies only to Android targets. + + A list of external libraries that will be copied into your application's + \c libs folder and loaded on start-up. This can be used, for instance, + to enable OpenSSL in your application. For more information, see + \l{Adding OpenSSL Support for Android}. + + \target ANDROID_EXTRA_PLUGINS + \section1 ANDROID_EXTRA_PLUGINS + + \note This variable applies only to Android targets. + + Specifies different resources that your application has to bundle but that + cannot be delivered through the assets system, such as QML plugins. With this + variable, \l androiddeployqt will make sure everything is packaged and + deployed properly. + + \target ANDROID_FEATURES + \section1 ANDROID_FEATURES + + \note This variable applies only to Android modules. + + Specifies a module's features list: + + \badcode + ANDROID_FEATURES += android.hardware.location.gps + \endcode + + For more information, see \l{Android: }{Android Docs}. + + \target ANDROID_LIB_DEPENDENCIES + \section1 ANDROID_LIB_DEPENDENCIES + + \note This variable applies only to Android modules. + + This is useful when writing a Qt module. It specifies a list of pre-built + dependencies used by the module, for example: + + \badcode + ANDROID_LIB_DEPENDENCIES += \ + plugins/libplugins_platforms_qtforandroid.so + \endcode + + \target ANDROID_MIN_SDK_VERSION + \section1 ANDROID_MIN_SDK_VERSION + + \note This variable applies only to Android targets. + + Specifies the minimum Android API level for the project. By default, this + variable is set to API level 21. + + \target ANDROID_PACKAGE_SOURCE_DIR + \section1 ANDROID_PACKAGE_SOURCE_DIR + + \note This variable applies only to Android targets. + + Specifies the path for a custom Android package template. The Android package + template contains: + \list + \li AndroidManifest.xml file + \li build.gradle file and other Gradle scripts + \li res/values/libs.xml file + \endlist + + The path specified by this variable can contain custom Java classes under + \c src directory. By default, the \l androiddeployqt tool copies the + application template from the Qt for Android installation path into your + project's build directory, then it copies the contents of the path specified + by this variable on top of that, overwriting any existing files. For + instance, you can make a custom \c {AndroidManifest.xml} for your application, + then place this directly into the directory specified by this variable. + + \target ANDROID_PERMISSIONS + \section1 ANDROID_PERMISSIONS + + \note This variable applies only to Android modules. + + Specifies a module's permissions list: + + \badcode + ANDROID_PERMISSIONS += android.permission.ACCESS_FINE_LOCATION + \endcode + + For more information, see \l{Android: }{Android Docs}. + + \target ANDROID_TARGET_SDK_VERSION + \section1 ANDROID_TARGET_SDK_VERSION + + \note This variable applies only to Android targets. + + Specifies the target Android API level for the project. By default, this + variable is set to API level 28. + + \target ANDROID_VERSION_CODE + \section1 ANDROID_VERSION_CODE + + \note This variable applies only to Android targets. + + Specifies the application's version number. For more information, see + \l{Android: App Versioning}{Android App Versioning}. + + \target ANDROID_VERSION_NAME + \section1 ANDROID_VERSION_NAME + + \note This variable applies only to Android targets. + + Specifies the application's version in as a human readable string. For more + information, see \l{Android: App Versioning}{Android App Versioning}. + \target CONFIG \section1 CONFIG @@ -1376,6 +1557,13 @@ This variable is also used to specify which additional files will be deployed to embedded devices. + \target JAVA_HOME + \section1 JAVA_HOME + + \note This variable is useful only to Android targets. + + Specifies the JDK/OpenJDK installation path used for building the project. + \target LEXIMPLS \section1 LEXIMPLS -- cgit v1.2.3