mafulechkaMay 28, 2020, 3:43 a.m.

What's new in Qt for Android?

Qt 5.15 LTS and Qt for Android

Since many developers use Qt for Android, Qt wants to improve the developer experience. With the next release of Qt 5.15.0, the Qt developers have updated the Android documentation. The updated documentation contains a lot of new content on how to use Qt for Android to maximize its potential. It explains in more detail how to extend Qt to support more advanced features and better integration with Android APIs.

The main topics that have been improved in the documentation are:

• Extending Qt applications to use custom Java classes or assets and packaging structures.
• Versioning dependencies between Android Native Development Kit (NDK) and Qt.
• How to work with Android services in many different ways.
• How to create and use OpenSSL with Android. Dependencies between the OpenSSL repository support all versions of Qt, with both QMake and CMake.

In the same context, a lot of Qt examples that had some issues like layout, scaling, or resolutions were fixed. Qt 5.15.0 Qt Android Extras ships with a new Qt Java Native Interface Messenger (Qt JNI Messenger) sample code. The example demonstrates one of the most important topics when using Qt for Android, namely JNI communication. It explains the workflow of method invocation and data exchange between Java and Qt. The example serves as a starting point for connecting Qt and Android in both directions.

While properly integrating with Android, the Android Native Files dialog can now be used by default to open files and save operations. The native file dialog also uses Android's 'content' file scheme for file content and does additional exception checks that have caused some random crashes in the past. AndroidManifest.xml no longer sets minSdkVersion and targetSdkVersion. Instead, you can install them using the build.gradle file. Android Studio will issue a warning about setting up SDK versions in the manifest file.

Qt Creator 4.12

The latest release of Qt Creator has brought significant improvements to Android development. Qt Creator can now automatically install the Android SDK, which is the main building block for building and running Qt Android applications. It will prompt you to install the required development packages. What's more, using OpenSSL in your applications is now easier with Qt Creator, which allows you to set a local library path and use it with any project from the kit's settings.

One of the significant features of Qt support for Android was the lack of Qt and NDK version control. In the past, Qt Creator could only have one valid NDK, which can be a concern these days when dealing with multiple versions and projects of Qt. The Android versions of Qt relied on different versions of the NDK and the developer had to select and switch to the correct version manually. That's why the Qt developers introduced a way to manage multiple versions of Qt and link each of them to the corresponding version of the NDK. Qt Creator keeps track of this using a shared configuration file. You can also use your own NDK paths if you wish.

Some other changes that the Qt developers have made include a list of examples for Android kits showing examples that have been tested and work on Android devices. For example, examples that are not shown by default include those that have unsupported features or modules on Android. In addition, improvements to the design and functionality of the user interface included AVD Manager , which gained some flexibility in creating AVDs, as well as selection of Manifest Editor icons.

A look into the future

In order to serve Qt's mobile users well, Qt is going to provide many more updates to Android support. The Qt developers will create more examples, documentation, and functionality, paving the way for simple and advanced Android development.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
Support the author Donate


Only authorized users can post comments.
Please, Log in or Sign up

Let me recommend you a great European Fornex hosting.

Fornex has proven itself to be a stable host over the years.

For Django projects I recommend VPS hosting

Following the link you will receive a 5% discount on shared hosting services, dedicated servers, VPS and VPN

View Hosting

C++ - Test 001. The first program and data types

  • Result:66points,
  • Rating points-1
  • korsar
  • Nov. 23, 2022, 8:57 a.m.

C++ - Test 005. Structures and Classes

  • Result:50points,
  • Rating points-4

C++ - Тест 003. Условия и циклы

  • Result:78points,
  • Rating points2
Last comments

GameDev on Qt - Tutorial 5. The explosion of bullets using sprite images

Если вдруг кто-то прочитает.... Скачал проект, скомпилил, запустил. Всё красиво и объектно ориентировано, но вот FPS дико страдает, когда появляется 10+ врагов. Может есть какие-то надстрой…
  • juvf
  • Nov. 25, 2022, 12:14 a.m.

Qt/C++ - Lesson 051. QMediaPlayer – simple audio player

Добрый день. Подскажите, как можно перехватить в Qt или Qml уровень воспроизводимого звука? Т.е. требуется сделать виртуальный винтажный индикатор (стрелочный или светодиодный), который бы …
  • juvf
  • Nov. 3, 2022, 3:20 a.m.

QML - Lesson 007. ListView. Dynamic creation and deletion of elements

Добрый день. Очень полезная статья. Спасибо. Вопрос такой: 1) нужно "взять" кнопку 2 пальцем (прикаснулись пальцем к кнопке 2, держим, через 2-3 кнопка оторвалась от ListView) и пере…

PyQt5 - Lesson 007. Works with QML QtQuick (Signals and slots)

А можно ли из QML сделать привязку свойства к свойству пайтоновского объекта? Ну, т.е. , например, у нашего объекта Calculator обхвялем свойства sumresult и subresult c с декоратором @pyqtProp…

Python Image Recognition with TensorFlow and Keras

А что собственно выводит программа, как вывести то что она смогла распознать?
Now discuss on the forum

Sorting the added QML elements in the ListModel

I am writing an alarm clock in QML, I am required to sort the alarms in ascending order (depending on the date or time (if there are several alarms on the same day). I've done the sorting …

Как добавить в скрипт размер каждого файла в Мб ?

IDLE (Python 3.10 64-bit) Win 10 Есть такой скрипт: Поиск перечня файлов в папке и запись списка: import ospath = 'E:\Мой Python\__Видеокурсы Python'rez = sorted(os.listdir(pa…
  • nkly
  • Oct. 18, 2022, 9:14 a.m.

Как сохранить данные древовидной модели на основе QStandardItemModel в файл

Вы меня неправильно поняли. Допустим я собираю кулинарные рецепты и один из них - рецепт супа Харчо. Структура файла данных такова: { node:Рецепт супа Харчо parent:Вкусные блюда, …

Вопрос по Qt Creator

Добрый день. Не знаю, подобную проблему я не решал.

Задать другой класс div-у

Добрый день. Попробуйте использовать Selenium. Это библиотека есть в виде Python модуля и она позволяет загружать страницу и манипулировать html элементами. Как я понимаю, в ней можно…
© EVILEG 2015-2022
Recommend hosting TIMEWEB