Unable to display map on android

971
2
Jump to solution
01-05-2023 09:57 AM
TasawarAhmad
New Contributor III

Hi,

I am learning to integrate QT with arcgis runtime api.

I have been able to display map on desktop, however after deploying it for android the application crashes.

Can anyone pls guide me on this?

Development System:
QT Creator 9.0.1

based on QT 6.4.0 (MSVC 2019)

Android JDK: 11.0.16

Android NDK: 23.1.7779620

Openssl installed.

Deployment Device:

Snapdragon 845

Android 10

StackTrace:

I mple.DisplayMa: Late-enabling -Xcheck:jni
E mple.DisplayMa: Unknown bits set in runtime_flags: 0x8000
I Perf : Connecting to perf service.
I FeatureParser: can't find beryllium.xml in assets/device_features/,it may be in /system/etc/device_features
E libc : Access denied finding property "ro.vendor.df.effect.conflict"
E Perf : Fail to get file list org.qtproject.example.DisplayMap
E Perf : getFolderSize() : Exception_1 = java.lang.NullPointerException: Attempt to get length of null array
E Perf : Fail to get file list org.qtproject.example.DisplayMap
E Perf : getFolderSize() : Exception_1 = java.lang.NullPointerException: Attempt to get length of null array
W System : ClassLoader referenced unknown path:
W mple.DisplayMa: Accessing hidden method Landroid/content/ContextWrapper;->getDisplay()Landroid/view/Display; (greylist, linking, allowed)
D ForceDarkHelper: updateByCheckExcludeList: pkg: org.qtproject.example.DisplayMap activity: org.qtproject.qt.android.bindings.QtActivity@4029d6d
I chatty : uid=10314(org.qtproject.example.DisplayMap) identical 1 line
D ForceDarkHelper: updateByCheckExcludeList: pkg: org.qtproject.example.DisplayMap activity: org.qtproject.qt.android.bindings.QtActivity@4029d6d
D ForceDarkHelper: updateByCheckExcludeList: pkg: org.qtproject.example.DisplayMap activity: org.qtproject.qt.android.bindings.QtActivity@4029d6d
I chatty : uid=10314(org.qtproject.example.DisplayMap) identical 11 lines
D ForceDarkHelper: updateByCheckExcludeList: pkg: org.qtproject.example.DisplayMap activity: org.qtproject.qt.android.bindings.QtActivity@4029d6d
D Qt JAVA : Class org.qtproject.qt.android.bluetooth.QtBluetoothBroadcastReceiver does not implement setActivity method
D Qt JAVA : Class org.qtproject.qt.android.multimedia.QtAudioDeviceManager does not implement setActivity method
D Qt JAVA : Class org.qtproject.qt.android.positioning.QtPositioning does not implement setActivity method
W linker : Warning: "/data/app/org.qtproject.example.DisplayMap-iw3jX7ShJnypIGHFe-hEzg==/lib/arm64/libc++_shared.so" unused DT entry: unknown processor-specific (type 0x70000001 arg 0x0) (ignoring)
I QtCore : Start
I Qt : qt started
I Qt JAVA : Can't find '/data/app/org.qtproject.example.DisplayMap-iw3jX7ShJnypIGHFe-hEzg==/lib/arm64/libQt6MultimediaQuick_arm64-v8a.so'
I qt.positioning.android: Positioning start
W linker : Warning: "/data/app/org.qtproject.example.DisplayMap-iw3jX7ShJnypIGHFe-hEzg==/lib/arm64/libEsriCommonQt_arm64-v8a.so" has unsupported flags DT_FLAGS_1=0x81 (ignoring unsupported flags)
E AndroidRuntime: FATAL EXCEPTION: qtMainLoopThread
E AndroidRuntime: Process: org.qtproject.example.DisplayMap, PID: 12572
E AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNK10QJniObject15callVoidMethodVEP7_JNIEnvP10_jmethodIDSt9__va_list" referenced by "/data/app/org.qtproject.example.DisplayMap-iw3jX7ShJnypIGHFe-hEzg==/lib/arm64/libEsriCommonQt_arm64-v8a.so"...
E AndroidRuntime: at java.lang.Runtime.load0(Runtime.java:938)
E AndroidRuntime: at java.lang.System.load(System.java:1631)
E AndroidRuntime: at org.qtproject.qt.android.QtNative$3.run(QtNative.java:472)
E AndroidRuntime: at org.qtproject.qt.android.QtThread$2.run(QtThread.java:51)
E AndroidRuntime: at org.qtproject.qt.android.QtThread$1.run(QtThread.java:25)
E AndroidRuntime: at java.lang.Thread.run(Thread.java:919)
I Process : Sending signal. PID: 12572 SIG: 9
22:34:53:

"org.qtproject.example.DisplayMap" died.

 

WhatsApp Image 2023-01-05 at 10.41.07 PM.jpeg

0 Kudos
1 Solution

Accepted Solutions
JamesBallard1
Esri Regular Contributor

Hi @TasawarAhmad ,

 We are familiar with this problem.  Unfortunately with Qt 6.4, the ABI was broken so our Map SDK libraries (built with Qt 6.2.4) do not work.

You should be able to get it working if you use Qt 6.2.x, or 6.3.

It is fixed in Qt itself, but not until 6.4.3. More details here https://bugreports.qt.io/browse/QTBUG-109428  

View solution in original post

0 Kudos
2 Replies
JamesBallard1
Esri Regular Contributor

Hi @TasawarAhmad ,

 We are familiar with this problem.  Unfortunately with Qt 6.4, the ABI was broken so our Map SDK libraries (built with Qt 6.2.4) do not work.

You should be able to get it working if you use Qt 6.2.x, or 6.3.

It is fixed in Qt itself, but not until 6.4.3. More details here https://bugreports.qt.io/browse/QTBUG-109428  

0 Kudos
TasawarAhmad
New Contributor III

Thank you. After downgrading to qt 6.2.4 everything seems to work.

👍