I am developing Qt Cross platform application for Android, recently i have updated Qt creator and Installed new Qt version. I am using 'Qt Creator version 4.5.0'
. I have updated to 'QT version 5.10'
. This Set up is done on Ubuntu 16.04.
Followed link Getting Started with QT Installation.
I am always getting Error message "Android Settings have error" in Qt Creator->Tools->Options->Devices->Android.
Because of above issue i am not able to build application for Android.
I have recently updated my Android sdk, I am able to build and run Sample application from Android Studio, indicating that SDK instalation is working properly. I am using Android SDK tools 26.1.1. Please check bellow screen shots.
Android SDK build tools Installed.
Android SDk platforms installed
Already gone through different links on Stack Overflow and QT forum, All are Suggesting downgrade of Android SDK tools(Due to QT Known bug), but none of the solution is working for me. I know there are few known bugs building Android application with QT 5.9 and Qt Creator version 4.0. I guess It is resolved, as same set up is working fine on Windows 10.
QT Creator wont list any available Android Build SDKs QT Android Installation error
Please help if anybody here resolved same issue.
I just found this bugreport, where in the comments can be found
The native 'sdkmanager' tool can not update packages on windows and it fails with JDK 9 and these issues cascades to Qt Creator also.
I just tried installing JDK 8 and changing the path, and after reopening the settings menu it had worked!
After lot of effort I am able to fix this issue, thanks to Mohammad Kanan, Vesafary who's answer made me get closer to Answer, Actual issue resolved with the following steps. It may be helpful who are facing the same issue In Ubuntu or may work on other platforms as well.
- First Step is (as most of the answers suggest) changed from JDK 9 to JDK 8. I am using Java version "1.8.0_152".
- Step 1 didn't help me (Qt creator Persist some Settings), so i removed complete Qt 5.8,5.9,5.10 installation (Using Qt Maintainace tool) and following 2 links Uninstall Qt Completely, Uninstall Qt Creator.
and did Instalation again. May be your problem get resolved at this step.
Step 2 also didn't help in my case, QT Creator still persist few settings and need to reset Qt creator settings. That can be done by deleting data in this folder
~/.config/QtProject ~/.config/Qt file ~/.config/QtProject.conf
path may be different in different System and OS. following links will be helpful in this case.
Now i am able to build and run android application.
"Platform SDK installed" requires a working a sdkmanager
command.
If you have the Platform SDK installed, try running the sdkmanager
command directly.
This is $ANDROID_SDK_ROOT/tools/bin/sdkmanager
. On my Linux system this was in $HOME/Android/Sdk/tools/bin/sdkmanager
.
The typically issue is
- You need to install JDK 8 properly (note that JDK 9, JDK 10 and JDK 11 will not work!)
If you have installed a newer JDK you will need to downgrade to JDK 8. Either OpenJDK or Oracle will work, but it needs to be JDK 8.
Work thru any remaining issues with the sdkmanager
command line, then, once that's done, you should find Qt Creator to be happy again.
References:
Thanks I had the same problem, using Debian Buster (sid) with QtCreator 4.6.2 with Qt5.10.1
Go into ~/.config and wipe all the qtcreator settings, then start again specifying jdk.8 then the paths to the Android SDK and then the NDK.
It then works and the dumb SDK platform not installed error does not occur. :)
Out of interest I tried wiping everything ~/.config/qtcreator* and then specifying jdk10. Does not work as before.
If you then change to jdk8, it still does not work. You have to close QtCreator, wipe all the configs, reopen and choose it again, whereon it will work.
you do not need to wipe the configs for qt. simply install the latest of jdk 8 from here -> http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
next select the jdk location in the options and then toward the bottom select the sdk manager tab. Click the update installed button and it should show a window with a list of licenses you need to agree to.
The problem lies with jdk 9 and up. For some odd reason it doesn't show the license agreements and doesn't continue beyond that point. The fix is sticking with jdk8
OK, after many many hours try-out I finally find out how we can fix it.
- Download and use Android NDK r10e separately (don't install it through SDK Manager)
- Download and use Android SDK without Android Studio (download android tools from official site) Qt Preferences will installs all needed packages (build tools , platform tools, sdk tools, platform android-28)
- Install and use Java JDK 8 (not newer)
Please note that installing SDK packages through Android Studio will not be detectable by Qt
Linux:
The proposed solutions did not work for me.
I already had Java 8 and with Qt 5.12 installed the latest SDK and NDK are supposed to work (should work since Qt 5.9).
After hours of fiddling, reinstalling Qt and Java, removing configs, downloading older NDKs and all, it still did not work.
My mistake was that I unpacked SDK and NDK as root into a read-only location for the user. After chown
ing the folder to the my normal user, Creator found everything and worked as expected.
So also check, if the user running Qt Creator owns the folder containing SDK and NDK. It's a quick check that might prevent you from deleting your configs. :)
来源:https://stackoverflow.com/questions/48189272/qt-creator-android-error-platform-sdk-installed