aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/blackbox/tst_blackboxandroid.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Android: Add support to generation of aab packageRaphaël Cotty2020-06-251-216/+393
| | | | | | | | | This patch adds the Android.sdk packageType property which sets the target application. By default (previous behavior) qbs generates an apk package. When set to aab, qbs generates instead an aab package Change-Id: Ic09776d08e2a2ecd68fb4c08881201a7a0a25240 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Add option to use aapt2 instead of aapt in Android.sdk moduleRaphaël Cotty2020-06-041-30/+145
| | | | | | | | | | | aapt has been deprecated (https://developer.android.com/studio/command-line/aapt2) and replaced by aapt2. PropertyOption aaptFileName allows those value: "aapt" and "aapt2". Default value is set to "aapt" for the moment. Fixes: QBS-1562 Change-Id: I1970cafaa54a0e035c08ffe5f9967b712f5c5253 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: clean flagsRaphaël Cotty2020-05-131-11/+0
| | | | | | | | | | | | | | | | | | | | | | Update flags following those changes: https://codereview.qt-project.org/c/qt/qtbase/+/268268 https://codereview.qt-project.org/c/qt/qtbase/+/271909 https://codereview.qt-project.org/c/qt/qtbase/+/278646 Remove support to ARMv5 (armeabi), MIPS, and MIPS64 because its support was ended in r17 and minimum ndk is r19... Remove gdb server as it's not needed anymore since by qtcreator (since 4.9 IIRC) From https://android.googlesource.com/platform/ndk/+/master/docs/BuildSystemMaintainers.md Adding linker flags: --build-id=sha1 : Additional Required Arguments section --gc-sections : Controlling Binary Size section Fixes: QBS-1496 Change-Id: Id522bf6bb736c58244aa511189f7acdd0525ab12 Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Update support to qt 5.14 and multi-arch apks for Qt appsRaphaël Cotty2020-02-041-65/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before qt 5.14. The profile property "moduleProviders.Qt.qmakeFilePaths" is set with one or more paths to the different android architectures. Each qmake path belongs to a different android architecture installation. So each qmake is used to generated the Qt module corresponding to the architecture. Although qbs can generate multi-arch apks using multiplex mode, this is not possible when the project depends on qt libraries. This is because of the restriction of the qt tool androiddeployqt used by qbs. Now with qt 5.14. All android architectures are installed in the same directory. So the profile property "moduleProviders.Qt.qmakeFilePaths" is set with one qmake path. This directly impacts the qbs-setup-android tool and the generation of the Qt modules. Because qt libraries are installed in the the same directory, they have the abi in their name (libQt5Core_armeabi-v7a.so). So the rules that generate the apks are also impacted. The new androiddeployqt have a new interface (json config file format and requires to have the input libraries installed in the deployment directory) which allows the generation of multi-arch apks. So Qt.android_support modules needs to be updated as well. Fixes: QBS-1497 Change-Id: Ibd546f356c38a05f42dfcac0a4ec92bd82d6f700 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Adapt source code to Qt 6Christian Kandeler2019-12-171-2/+2
| | | | | | Change-Id: If84e3e4c832c2b3dc39e40be13e989996ab764d1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: Auto-detect Android.ndk.platformChristian Kandeler2019-04-051-2/+1
| | | | | | | ... the same way as Android.sdk.platform. Change-Id: I974fdfd9f56f312cbd39ea155d87694622a9c0b8 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Return initializer list where it is possibleDenis Shienkov2019-02-261-2/+2
| | | | | | | | | This fixes this clang-tidy warning: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list] Change-Id: I421e1e47462fe0e97788672684d47943af7df850 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use QStringLiteral more where it is possibleDenis Shienkov2019-02-251-2/+2
| | | | | | Change-Id: I7419cc3fbc1e8776de3943852dcedab4c95d1c32 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix android autotest for the case of no Qt profile being presentChristian Kandeler2018-11-161-0/+2
| | | | | Change-Id: If09515d070802cc6d34101c5662962436482bd55 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Properly support building Qt apps for AndroidChristian Kandeler2018-11-161-12/+134
| | | | | | | | ... via the androiddeployqt tool. Fixes: QBS-991 Change-Id: I4a3abe977fee6a9d1657a4fd6c1b43709429da9f Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: Enable building apps with native code and no multiplexingChristian Kandeler2018-10-191-10/+29
| | | | | | | | | | | Until now, we needed to either put the native part into its own product or use multiplexing with the "APK product" serving as the aggregate. Now it is also possible to use a single product without multiplexing, which is a more natural approach in the case where there is only one architecture. Change-Id: I976168c99f75ad8e4940ac61f957c64ad29f5f5c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Merge 1.12 into masterChristian Kandeler2018-10-121-6/+10
|\ | | | | | | Change-Id: I96c735aeda89e02f1fa9107ecfc10ebf4b554dbc
| * Fix build with MSVCChristian Kandeler2018-10-111-1/+1
| | | | | | | | | | Change-Id: Iec49ba912161d5411a59440925dfd868a9c794fb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Android support: Adapt to changes in newer revisionsChristian Kandeler2018-10-111-6/+10
| | | | | | | | | | | | | | | | Revision 17 dropped some architectures, revision 18 removed GCC. We also missed some earlier changes to clang-related paths. Change-Id: Ie2fa1891f7f4de28e18ea6caadce9eac964bb523 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* | Android: Rewrite the rules gathering binaries for packagingChristian Kandeler2018-10-041-8/+6
| | | | | | | | | | | | | | | | | | | | | | These rules were unnecessarily complicated; in particular, the indirection via a text file for the gdbserver and STL binaries was not needed. This also fixed the gdbserver file name in the package: It has to be libgdbserver.so, rather than just gdbserver as on the host. Change-Id: I2315660983904e8b922164be9054d6bba51f852d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Android: Properly support the aidl toolChristian Kandeler2018-08-271-1/+9
| | | | | | | | | | | | | | | | We now pull in the AIDL framework file and let the user set search paths for imports. Change-Id: I93460a77b064fa87849b93c0b0e4bd3bbfd7459f Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Enable the Application item to create Android appsChristian Kandeler2018-08-101-1/+2
|/ | | | | | | | | | | | | | | The formerly required AndroidApk item is no longer needed: We just tag the APK file as an application and let the Application item pull in the Android.sdk module for Android targets. It is also possible to have native code directly in the Application product; in that case, the multiplexed variants become dynamic libraries and the APK file is built for the aggregate. [ChangeLog] The AndroidApk item was deprecated, a normal Application item can be used instead. Change-Id: I04f5f3892f354ca9eb4f2da8055abcd8d072aba0 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android autotest: Get the jar file path from qbsChristian Kandeler2018-02-161-1/+2
| | | | | | | There is no guarantee that we find it in the environment. Change-Id: I58281b5936e0ddad51cbdbe0833f62c4dbb42c1d Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Fix android autotest on WindowsChristian Kandeler2018-01-261-0/+2
| | | | | | | We failed to account for the carriage returns in the jar output. Change-Id: I2061a8ea306c64ce44039472f2840f71898c2097 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Replace another find_if by none_ofJoerg Bornemann2018-01-181-4/+5
| | | | | Change-Id: I68445c362386c6c310ab098ce5ea6780c1232e42 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix buildChristian Kandeler2017-12-151-3/+3
| | | | | | | | Apparently, you cannot QFETCH const variables in Qt 5.6. Problem introduced by drive-by change in 126ce8cd2b. Change-Id: I6cbb9b5151748fb9d640cc705e0a85abfffd7c3e Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Run Android autotests in release mode as well as debugJake Petroules2017-12-141-56/+64
| | | | | | | This should help catch more errors in the future. Change-Id: I54c1e4314357351af0df9fbb7ed6df36fda983f5 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Don't rely on a qbs-autotests_android profile for autotestsJake Petroules2017-11-291-10/+9
| | | | | | | | Instead, simply set the qbs.targetPlatform property for the relevant products. Change-Id: Ia39cf6d4f729783b0d7fb85a83023f438b9e3e20 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Replace more loops with range-forJake Petroules2017-11-271-2/+1
| | | | | | | | ...or raw iterators for reverse iterations. Change-Id: I62a110ceeefaf70aaa41f6fb09d811f0eac05657 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* STL compatibility: use empty() instead of isEmpty()Jake Petroules2017-11-161-3/+3
| | | | | | | This is a simple find and replace with manual sanity check. Change-Id: Iab6d46dcc3be246d1650aae2b1730f933b717be8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* STL compatibility: use size() instead of count()Jake Petroules2017-11-151-1/+1
| | | | | | | This is a simple find and replace with manual sanity check. Change-Id: Ia733befe7885dc3c643d5c84e151312bfd86a3c6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Make the teapot test a little less strictJake Petroules2017-11-131-6/+11
| | | | | | | | | | | | | Make 'unexpected files encountered' only a warning instead of an error; it's possible and has historical precedent in the Android samples. Further, remove th ic_launcher.png files from the list of required files of the teapot example. These became mipmaps instead of drawables at some point and it is not worth the effort to try to create a proper conditional to select the right list of files. Change-Id: If71bc394e64c19448c152b905ecff29dd436d190 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android autotests: fix default architectureJake Petroules2017-10-191-1/+1
| | | | | | | Amends 8d0b530 Change-Id: Idcb3a05ab344914124d5eeb9811651b9ed9d1e83 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Make the Android autotest more robustJoerg Bornemann2017-10-041-13/+107
| | | | | | | | Do not use magic numbers. Compare file lists. Change-Id: Icb1e3b511ef43332335808ab53d94e12e116f647 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Fix build with Qt 5.6Joerg Bornemann2017-09-191-0/+1
| | | | | | | We need to include qttools.h for qAsConst. Change-Id: I1719be6f1a108dcea51ff25b4c5ec50c7203775f Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Separate the Java and Android autotests into their own suitesJake Petroules2017-08-291-0/+153
Android is not inherently tied to Java. Android apps can be built without any Java at all (for example, using Kotlin and/or C++ instead of Java). This also paves the way to greatly expand the Android test suite as we should be independently testing various pieces of functionality rather than grouping everything into a single multi-axis test case. Change-Id: I0b2950e701461320e7eb7266acccc78f5d98261f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>