Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

The process "...\android_armv7\bin\androiddeployqt.exe" exited with code 14.



  • Hi all,

    Here is my setting for JDK, NDK and SDK. Should I replace any of them with some other version?

    0_1555960739441_1.PNG

    I'm going to build a QML app. When I hit the build button on Qt Creator 4.8.1, I get no APK file but the error below:

    The process "D:\Qt\Qt5.12.1\5.12.1\android_armv7\bin\androiddeployqt.exe" exited with code 14. Error while building/deploying project Ping-Pong (kit: Android for armeabi-v7a (Clang Qt 5.12.1 for Android ARMv7)) When executing step "Build Android APK"

    What's the reason for that, please?



  • Could it be a problem with the version of Qt, which is 5.12.1?


  • Qt Champions 2017

    Do you see any other error before this step ?


  • Moderators

    @tomy From what I have seen from other users, it seems like the latest ndk has some problems with Qt. I assume 19c is the latest ?

    I'm using 18b and that one is working fine for me, haven't updated in a while.



  • Thanks to you both guys.
    The problem apparently is with gradle.

    FAILURE: Build failed with an exception.

    * Where: Build file 'D:\Projects\QML\Ping-Pong\build-Ping-Pong-Android_for_armeabi_v7a_Clang_Qt_5_12_1_for_Android_ARMv7-Debug\android-build\build.gradle' line: 39

    * What went wrong:
    A problem occurred evaluating root project 'android-build'.
    > Invalid revision: 29.0.0-preview

    * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

    * Get more help at https://help.gradle.org

    BUILD FAILED in 10s Warning: QML import could not be resolved in any of the import paths: QtQuick.Extras.Private.CppUtils Warning: QML import could not be resolved in any of the import paths: QtQuick.Extras.Private.CppUtils Warning: QML import could not be resolved in any of the import paths: QtQuick.Controls.impl Warning: QML import could not be resolved in any of the import paths: QtQuick.Controls.Fusion.impl Warning: QML import could not be resolved in any of the import paths: QtQuick.Controls.Imagine.impl Warning: QML import could not be resolved in any of the import paths: QtQuick.Controls.Material.impl Warning: QML import could not be resolved in any of the import paths: QtQuick.Controls.Universal.impl Building the android package failed! -- For more information, run this command with --verbose. 12:11:55: The process "D:\Qt\Qt5.12.1\5.12.1\android_armv7\bin\androiddeployqt.exe" exited with code 14. Error while building/deploying project Ping-Pong (kit: Android for armeabi-v7a (Clang Qt 5.12.1 for Android ARMv7)) When executing step "Build Android APK"

    My SDK folder is set somewhere else from the gradle folder set to the system environment.


  • Moderators

    @tomy said in The process "...\android_armv7\bin\androiddeployqt.exe" exited with code 14.:

    29.0.0-preview

    use an other version. Preferably the last non preview one.



  • Is this problem solved?
    This is a problem with gradle it seems. Qt will try to download gradle by itself for the first time. If it is unable to download gradle due to network problem or something it will throw such errors.



  • @J.Hilk

    use an other version. Preferably the last non preview one.

    An other version of what? Gradle? I downloaded the complete version of gradle 5.4 from there and set its path to system variables and went for re-building the project. The same result! :(

    Should I use the gradle inside the SDK directory>?


  • Moderators

    @tomy
    IIRC that is referring to the sdk platform
    0_1556015788586_ac974edb-bc1d-4875-8a56-d646592ece4a-image.png



  • @J.Hilk

    Should I uninstall Android SDK Platform-tools 28.0.2?

    Here's also the packages:

    0_1556016780743_Capture.PNG


  • Moderators

    @tomy I would uninstall all preview packages. That was cause for a similar issue from on other poster recently.

    Can't quite find the post.
    "The search function is not the best" ...



  • @J.Hilk

    I removed all packages with the word "preview" in SDK:

    0_1556018053870_Capture.PNG

    Yet, the same errors!


  • Moderators

    @tomy
    just to make sure, you did a complete rebuild after the removal ?
    deleted building dir, rerun qmake.. the usual ?



  • @J.Hilk

    WOW Hilk! :) :)
    I did these and re-built the project. This time it built the APK and prior errors became vanished except for few normal warnings! :)

    Thanks so much for your help. Vielen Dank. :)



  • @J.Hilk

    I'm using 18b and that one is working fine for me, haven't updated in a while.

    Do you mean that when some version of NDK, like 18b, is working properly for apps for the time being, we shouldn't replace it with some newer version even if a newer version of Android is published and installed on Android devices?

    I mean, can it support future versions of Android and will work properly on devices running those new versions too?

    And about JDK, what version do you suggest to be good for recent and probably prior versions of Android, please?
    As you know, the current version of Android is 9, I suppose.


  • Moderators

    @tomy

    well
    that's a bit complicated.
    For a long time Qt was limited to a specific ndk, as some old stuff was dropped, that Qt relied on.

    With 5.12 and onwards it should now be "latest version of ndk" according to the docu.
    That, apparently, does not include the preview/release candidates.

    In the end you're limited to what google permits on the play store and that is, IIRC, currently the sdk platform 27 which is Android 7 !?
    That means if you want to upload a new app or update an old one your Target SDK should be 27 or newer.

    I personally think, If it ain't broke, don't fix it ;-)

    I'm running jdk1.8.0_192 and I'm not updating, if I don't have to.



  • @J.Hilk, thanks.

    With 5.12 and onwards it should now be "latest version of ndk" according to the docu.
    That, apparently, does not include the preview/release candidates.

    I didn't understand the part "the preview/release candidates" for ndk!

    If we want to use the latest "stable" version of ndk, so the choice will be android-ndk-r19c-windows-x86_64.zip, but you're seemingly using this r18b android-ndk-r18b-windows-x86_64.zip. (For Window x64 for instance).
    So the question is why do you use r18b while Docs says you need to use r19c, please?

    In the end you're limited to what google permits on the play store and that is, IIRC, currently the sdk platform 27 which is Android 7 !?

    Apparenlty the latest version is Pie 9 API level 28.

    That means if you want to upload a new app or update an old one your Target SDK should be 27 or newer.

    My android build sdk (for any QML app for Android) is always on android-28.
    Bad habit?

    I personally think, If it ain't broke, don't fix it ;-)

    I didn't get this part either! :) What "it" do you say please?

    I'm running jdk1.8.0_192 and I'm not updating, if I don't have to.

    The question is, when do you think/feel you have to update it?
    I want to copy that habit. When should I know it's time to update sdk, jdk, or ndk generally? Does it depend upon the version of Qt or android published or some other thing/item?


  • Moderators

    @tomy

    I didn't understand the part "the preview/release candidates" for ndk!

    Google, like other software companies, have official releases of their software and release candidates or preview versions of upcoming software.
    Basically open Beta access to flush out bugs/incompatibilities or testing of new features/apis

    Using one of those beta versions is bound to have bugs in them, making them not a viable candidate for development, but rather a test/check if your software is still working as indented in the upcoming releases.

    So the question is why do you use r18b while Docs says you need to use r19c, please?

    When I setup qt for android 5.12.0, 18b was the latest official release, and even listed in the docu as such.

    Apparenlty the latest version is Pie 9 API level 28.

    yes, but I was talking about the oldest api level still allowed to be used in the PlayStore.

    My android build sdk (for any QML app for Android) is always on android-28.
    Bad habit?

    No, not necessarily, at least in my opinion. Use what works ;-)

    I didn't get this part either! :) What "it" do you say please?

    https://www.urbandictionary.com/define.php?term=if it ain't broke%2C don't fix it

    The question is, when do you think/feel you have to update it?

    when something doesn't work anymore with old apis/software.
    Google is going to require 64bit apks alongside normal ones very soon, as in this or the coming year.
    I'm sure an update on my side is being required than, at the very least.



  • @J.Hilk

    The phrase was a bit old school. ;-) hhhhh

    Anyway, I mean the word you were referring by 'it' more. I suppsoe it was "sdk api level".

    I installed 5.12.3 and it's given me both MinGW 32-bit and 64-bit! Not the thing you were waiting for?

    To sum up, there is no version of ndk and jdk which will work for any devices running Android from 4 to 9, right? And do we just need to test?! (I don't think so!)

    And being up-to-date for all stuff (sdk, ndk and jdk) doesn't guarranty that your Android app works on all various devices. Right?


  • Moderators

    @tomy

    I installed 5.12.3 and it's given me both MinGW 32-bit and 64-bit! Not the thing you were waiting for?

    No I actually mean this one.
    0_1556049751277_8ae68e5b-360d-44e7-8e33-bfab0bd089f7-image.png

    To sum up, there is no version of ndk and jdk which will work for any devices running Android from 4 to 9, right? And do we just need to test?! (I don't think so!)

    Well, Qt is limited to minimal Android version of 4.4. And any APK that works on the newest api should also work backwards without (much) issues. That one google actually get's down pretty good.

    And being up-to-date for all stuff (sdk, ndk and jdk) doesn't guarranty that your Android app works on all various devices. Right?

    I would say, mostly correct ;-)
    nothing is guaranteed.



  • @J.Hilk

    No I actually mean this one.
    0_1556049751277_8ae68e5b-360d-44e7-8e33-bfab0bd089f7-image.png

    0_1556050486616_Capture.PNG

    Well, Qt is limited to minimal Android version of 4.4. And any APK that works on the newest api should also work backwards without (much) issues.

    But the sdk for that level should have been previously installed, yeah?

    I would say, mostly correct ;-)
    nothing is guaranteed.

    Thanks.


  • Moderators

    @tomy said in The process "...\android_armv7\bin\androiddeployqt.exe" exited with code 14.:

    But the sdk for that level should have been previously installed, yeah?

    nope that‘s just waste of hd-space, gradle will only ever use one version anyway. By default the latest, I think.



  • @J.Hilk

    nope that‘s just waste of hd-space, gradle will only ever use one version anyway. By default the latest, I think.

    Really?

    Do you mean the part inside the red line in the screenshot below is enough for almost any Android device?

    0_1556052679145_Capture.PNG


  • Moderators

    @tomy jupp
    this is my install, I'm able to cover nearly everything, according to the PlayStore statistics:

    0_1556053143971_3434c746-b6b5-4508-a0ad-10edd9cc60db-image.png


Log in to reply