mafulechka
mafulechkaMay 28, 2020, 4: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.

Do you like it? Share on social networks!

Comments

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

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:50points,
  • Rating points-4
m

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:80points,
  • Rating points4
m

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:20points,
  • Rating points-10
Last comments
ИМ
Игорь МаксимовNov. 22, 2024, 11:51 a.m.
Django - Tutorial 017. Customize the login page to Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Evgenii Legotckoi
Evgenii LegotckoiOct. 31, 2024, 2:37 p.m.
Django - Lesson 064. How to write a Python Markdown extension Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
A
ALO1ZEOct. 19, 2024, 8:19 a.m.
Fb3 file reader on Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь МаксимовOct. 5, 2024, 7:51 a.m.
Django - Lesson 064. How to write a Python Markdown extension Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas5July 5, 2024, 11:02 a.m.
QML - Lesson 016. SQLite database and the working with it in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Now discuss on the forum
Evgenii Legotckoi
Evgenii LegotckoiJune 24, 2024, 3:11 p.m.
добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
t
tonypeachey1Nov. 15, 2024, 6:04 a.m.
google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
NSProject
NSProjectJune 4, 2022, 3:49 a.m.
Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…
9
9AnonimOct. 25, 2024, 9:10 a.m.
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

Follow us in social networks