diff options
Diffstat (limited to 'doc/src/platforms/android/android-how-it-works.qdoc')
-rw-r--r-- | doc/src/platforms/android/android-how-it-works.qdoc | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/doc/src/platforms/android/android-how-it-works.qdoc b/doc/src/platforms/android/android-how-it-works.qdoc new file mode 100644 index 00000000..0ec8db1c --- /dev/null +++ b/doc/src/platforms/android/android-how-it-works.qdoc @@ -0,0 +1,56 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +/*! +\page android-how-it-works.html +\title Qt for Android: How It Works +\brief An overview of architecture, toolchain, and other useful information. +\ingroup androidplatform + + +If you're a developer looking for a high level overview of how Qt supports the +Android platform, this page is for you. + +The video from the 2021 Qt World Summit gives an overview of Qt for Android. + +\youtube nmvurCcsWos "A picture of an agenda that links to a YouTube video" + +\section1 Architecture + +\section2 Activities +The implementation of Qt for Android is made up of three main parts, +and the glue in between: + +\list + \li Qt Core + \li the Android QPA plugin + \li The Java Android code +\endlist + +\image qt_android_architecture.png "An overview Qt for Android's Architecture" + +\list + \li The default entry point for a Qt app is the QtActivity, which upon + starting, will call the QtActivityLoader which will try to load the + application by calling the QtActivityDelegate. + \li QtActivityDelegate will make the necessary calls to load the Qt + libraries and the main app library with the help of QtNative. + \li QtNative handles the various Java operations that don’t need to be + exposed, such as: loading the libraries and handling files. + \li The QtActivityDelegate also handles the different listeners and input + handlers and propagate them from Java to Qt. +\endlist + +\section2 Services + +The architecture here is similar to that of Activities, but with services +specific classes. + +For information on how Qt supports Services in Android see \l{Android Services}. + +\section1 Build configuration + +For more information on configuration Qt for Android Builds see +\l{Environment Variables Used by Qt for Android} and \{Qt for Android: CMake}. + +*/ |