Qt on Android - does C ++ code work in Dalvik VM

I heard him say that C ++ code works "natively" on all platforms. By that, I am assuming that what is being suggested is that Qt's cross-platform capability is not using something like HTML 5.

But does this mean that in Android Qt the code runs in the Dalvik VM?

+3


source to share


2 answers


Android understands either Dalvik or the new ART. Dalvik and ART have the ability to link C / C ++ code using the Android NDK, which Android uses JNI. QT for Android, although C ++ still requires minimal Java initialization . This means that even if the C ++ code runs natively (architecture dependent) to the underlying OS, it still has to be exposed through code that runs in the virtual machine (for Android), since the virtual machine is not directly understood by C ++. but can link to it via native Java based platform which is Android NDK.



+3


source


Please check http://blog.qt.digia.com/blog/2013/07/23/anatomy-of-a-qt-5-for-android-application/

At the very top level, Qt for Android applications have two parts:

Qt Application: These are cross-platform code and resources that you, as an application developer, control yourself and that are summarized using your qmake.pro file.



Android Application Launcher: This is generated for you by Qt Creator the first time you connect your project to Qt for Android Kit.

So, the Android app launcher should run in the Dalvik VM. I'm not sure if this works well with the ART runtime for Android 5.0

+3


source







All Articles