QtAndroidTools: java.lang.ClassNotFoundException: Didn't find class "com.falsinsoft.qtandroidtools.AndroidTools"

I’ve tried to integrate Qt6 (6.4.2) + CMAKE version into an old app of mine but no success with displaying ads. It works fine with Qt5 or Qt6 + qmake…

I have to admit I’m newbie with CMAKE thus I tried to run QtAndroidToolsDemo, too - failed again with logs below:

W System : ClassLoader referenced unknown path: W linker : "/data/app/org.qtproject.example.QtAndroidToolsDemo-OZ2UfDfux5ValhpZcPT42Q==/lib/arm64/libc++_shared.so" unused DT entry: type 0x70000001 arg 0x0 I QtCore : Start I Qt : qt started D OpenGLRenderer: HWUI GL Pipeline I Adreno-EGL: <qeglDrvAPI_eglInitialize:379>: QUALCOMM Build: 05/10/18, 624c5bb, I109c45a694 D vndksupport: Loading /vendor/lib64/hw/gralloc.msm8937.so from current namespace instead of sphal namespace. I zygote64: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0 I OpenGLRenderer: Initialized EGL, version 1.4 D OpenGLRenderer: Swap behavior 2 W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE D vndksupport: Loading /vendor/lib64/hw/gralloc.msm8937.so from current namespace instead of sphal namespace. D vndksupport: Loading /vendor/lib64/hw/android.hardware.graphics.mapper@2.0-impl.so from current namespace instead of sphal namespace. D vndksupport: Loading /vendor/lib64/hw/gralloc.msm8937.so from current namespace instead of sphal namespace. W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE W Adreno-EGL: <qeglDrvAPI_eglGetConfigAttrib:612>: EGL_BAD_ATTRIBUTE D vndksupport: Loading /vendor/lib64/hw/gralloc.msm8937.so from current namespace instead of sphal namespace. W System.err: java.lang.ClassNotFoundException: Didn't find class "com.falsinsoft.qtandroidtools.AndroidTools" on path: DexPathList[[],nativeLibraryDirectories=[/system/lib64, /system/vendor/lib64]] W System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125) W System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:379) W System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:312) W System.err: at org.qtproject.qt.android.QtNative.startQtApplication(Native Method) W System.err: at org.qtproject.qt.android.QtNative$7.run(QtNative.java:622) W System.err: at org.qtproject.qt.android.QtThread$1.run(QtThread.java:25) W System.err: at java.lang.Thread.run(Thread.java:764) W libEGL : EGLNativeWindowType 0x7bed0fd010 disconnect failed

Could you, please, give some hint how can I get them running? Thx, Zoltan

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 24 (12 by maintainers)

Most upvoted comments

I’m quite new to cmake too but an idea could be to move up the set(QT_ANDROID_PACKAGE_SOURCE_DIR “${CMAKE_CURRENT_SOURCE_DIR}/android”) command like this:

set(QT_ANDROID_PACKAGE_SOURCE_DIR “${CMAKE_CURRENT_SOURCE_DIR}/android”) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/QtAndroidTools/QtAndroidTools) add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/QtAndroidTools/QtAndroidTools build) target_link_libraries(my-application PRIVATE QtAndroidTools)

You still have the old java files. Clean all the compiled parts and be sure to have the new java files under the project android src folder.