Maps app freezing/lagging

I’ve been using /e/OS on many devices now since quite a while and since some recent version the maps app started to behave weirdly.

Quite often it locks up or at least hangs very long triggering the system app hang message.

It also sometimes does not get the correct position or does not update it. I noticed this in other apps, too.

At first i thought this is due to my old phone and something maybe broken on the hardware side. But it is the same on my new device.

I also installed another French custom rom on my old phone which comes with Magic Earth by default as well. And here it works instantly without any lag!

I believe, there is something in the OS that triggers this issue maybe. I don’t know…

you could clear the Apps caches via Settings → Apps & Notifications → Magic Earth

  • what’s your /e/ and Magic Earth version?
  • did you install many device-local maps?
  • do you render most/all map attributes? (see General Settings → Maplayer)

From your description it might hang if it doesn’t get a position. It would be worth it to check adb logcat (or logfox) at the same time it hangs.

App cache can have nothing to do with this behaviour. I did this multiple times on my old device months ago without any impact.

I’m on /e/ v1.19 and maps 7.1.23.49 on new device and Magic Earth 7.1.24.6 on the old device.
I compared the layers and set the same map styles and even downloaded same maps on the old device to have same set up.

I looked for the same spot on both devices where the old one zooms immediately to it and also navigation is calculated quickly (though slower hardware) and on the new device nothing happens as long as I am typing triggering the said Android app not reacting message.

From my experience it seems to happen more often when I am indoors but I know for sure, it happens outside as well. I even checked the microg positioning settings are the same.

I will look for logfox.
(after ~3 minutes of typing new device is still hanging =( )

I installed LogFox and managed to get an app crash after short time. I will append here but should I report it elsewhere?

LogFox Crashlog
ANR in com.generalmagic.magicearth (com.generalmagic.magicearth/com.magiclane.androidsphere.map.MapActivity)
PID: 12640
Reason: Input dispatching timed out (3f1794d com.generalmagic.magicearth/com.magiclane.androidsphere.map.MapActivity (server) is not responding. Waited 5004ms for FocusEvent(hasFocus=true))
Parent: com.generalmagic.magicearth/com.magiclane.androidsphere.map.MapActivity
Frozen: false
Load: 12.93 / 11.4 / 6.73
----- Output from /proc/pressure/memory -----
some avg10=0.02 avg60=0.04 avg300=0.05 total=1094525
full avg10=0.02 avg60=0.02 avg300=0.01 total=735714
----- End output from /proc/pressure/memory -----
CPU usage from 39931ms to 0ms ago (2024-03-17 21:26:49.463 to 2024-03-17 21:27:29.394) with 99% awake:
  28% 12640/com.generalmagic.magicearth: 20% user + 7.4% kernel / faults: 103291 minor 28 major
  17% 7367/com.android.providers.media.module: 13% user + 4% kernel / faults: 14596 minor 1 major
  11% 6150/system_server: 6.2% user + 4.8% kernel / faults: 11374 minor 18 major
  9.2% 5941/surfaceflinger: 6.1% user + 3% kernel / faults: 267 minor 16 major
  7% 2162/sugov:4: 0% user + 7% kernel
  5% 2164/sugov:6: 0% user + 5% kernel
  4.2% 8824/com.f0x1d.logfox: 3.5% user + 0.6% kernel / faults: 15683 minor
  4% 5924/android.hardware.sensors@2.1-service.samsung-multihal: 0.5% user + 3.4% kernel / faults: 6 minor
  3.7% 2160/sugov:0: 0% user + 3.7% kernel
  3.5% 6389/com.android.systemui: 2.4% user + 1.1% kernel / faults: 456 minor 4 major
  3.4% 5903/android.hardware.audio.service: 0.4% user + 2.9% kernel / faults: 35 minor
  3% 6019/gpsd: 1.8% user + 1.2% kernel / faults: 150 minor 5 major
  2.5% 5912/android.hardware.graphics.composer@2.2-service: 1.5% user + 1% kernel / faults: 6 minor 1 major
  2.4% 5935/audioserver: 1.2% user + 1.2% kernel / faults: 34 minor 2 major
  2.3% 3165/decon0: 0% user + 2.3% kernel
  1.9% 8770/kworker/u18:6: 0% user + 1.9% kernel
  1.9% 1164/kworker/u17:1: 0% user + 1.9% kernel
  1.5% 7760/helium314.keyboard: 1.1% user + 0.4% kernel / faults: 4976 minor 110 major
  1.5% 7348/foundation.e.advancedprivacy: 1% user + 0.5% kernel / faults: 543 minor
  1.5% 6471/kworker/u18:5: 0% user + 1.5% kernel
  1.1% 408/kworker/u17:0: 0% user + 1.1% kernel
  1.1% 12925/kworker/u18:3: 0% user + 1.1% kernel
  0.9% 5409/logd: 0.3% user + 0.5% kernel / faults: 152 minor
  0.8% 3921/kworker/u17:2: 0% user + 0.8% kernel
  0.8% 10234/org.thoughtcrime.securesms: 0.6% user + 0.1% kernel / faults: 50 minor
  0.8% 10437/foundation.e.advancedprivacy: 0.5% user + 0.2% kernel / faults: 69 minor
  0.8% 12924/kworker/u18:2: 0% user + 0.8% kernel
  0.7% 1375/kswapd0: 0% user + 0.7% kernel
  0.6% 6012/lhd: 0.2% user + 0.3% kernel / faults: 10 minor 1 major
  0.5% 1890/kworker/0:2: 0% user + 0.5% kernel
  0.4% 8/rcu_preempt: 0% user + 0.4% kernel
  0.3% 1043/spi17: 0% user + 0.3% kernel
  0.3% 1914/kworker/u16:7: 0% user + 0.3% kernel
  0.3% 6619/com.android.phone: 0.2% user + 0.1% kernel / faults: 341 minor 4 major
  0.3% 8957/logcat: 0.1% user + 0.2% kernel
  0.3% 2026/irq/430-sec_ts: 0% user + 0.3% kernel
  0.3% 12662/kworker/u16:22: 0% user + 0.3% kernel
  0.2% 2589/kworker/4:5: 0% user + 0.2% kernel
  0.2% 5583/android.hardware.power-service.samsung-libperfmgr: 0.1% user + 0.1% kernel
  0.2% 5928/android.hardware.wifi@1.0-service: 0% user + 0.2% kernel
  0.2% 1895/kworker/u16:4: 0% user + 0.2% kernel
  0.2% 3159/devfreq_change: 0% user + 0.2% kernel
  0.2% 6025/vendor.samsung.hardware.gnss@2.0-service: 0% user + 0.1% kernel / faults: 27 minor
  0.2% 6030/android.hardware.biometrics.fingerprint@2.3-service.samsung: 0% user + 0.1% kernel / faults: 3 minor
  0.1% 27/ksoftirqd/2: 0% user + 0.1% kernel
  0.1% 5689/kworker/5:2: 0% user + 0.1% kernel
  0.1% 5919/android.hardware.memtrack@1.0-service: 0.1% user + 0% kernel / faults: 2 minor
  0.1% 6378/kworker/3:3: 0% user + 0.1% kernel
  0.1% 3160/decon0-vsync: 0% user + 0.1% kernel
  0.1% 6004/wificond: 0% user + 0.1% kernel / faults: 8 minor
  0.1% 13321/de.tutao.tutanota:pushprocess: 0.1% user + 0% kernel / faults: 241 minor
  0.1% 1244/ion_system_heap: 0% user + 0.1% kernel
  0.1% 3908/dhd_rpm_state_t: 0% user + 0.1% kernel
  0.1% 5895/statsd: 0% user + 0% kernel / faults: 11 minor
  0.1% 6667/com.android.launcher3: 0% user + 0% kernel / faults: 1626 minor 119 major
  0.1% 12664/kworker/u16:24: 0% user + 0.1% kernel
  0.1% 3161/decon0-fsync: 0% user + 0.1% kernel
  0.1% 3164/decon_hiber: 0% user + 0.1% kernel
  0.1% 7513/com.google.android.gms: 0% user + 0% kernel / faults: 246 minor 2 major
  0.1% 8068/kworker/2:2: 0% user + 0.1% kernel
  0.1% 8839/kworker/1:2: 0% user + 0.1% kernel
  0% 20/ksoftirqd/1: 0% user + 0% kernel
  0% 34/ksoftirqd/3: 0% user + 0% kernel
  0% 72/kworker/u16:2: 0% user + 0% kernel
  0% 7142/foundation.e.blisslauncher: 0% user + 0% kernel / faults: 44 minor
  0% 1849/irq/424-sec-nfc: 0% user + 0% kernel
  0% 3290/mmcqd/0: 0% user + 0% kernel
  0% 5896/netd: 0% user + 0% kernel / faults: 50 minor
  0% 5910/android.hardware.graphics.allocator@2.0-service: 0% user + 0% kernel / faults: 438 minor 2 major
  0% 13345/com.rhapsody.alditalk: 0% user + 0% kernel / faults: 7 minor
  0% 13370/kworker/0:1H: 0% user + 0% kernel
  0% 13753/com.facebook.lite: 0% user + 0% kernel
  0% 7/ksoftirqd/0: 0% user + 0% kernel
  0% 9/rcu_sched: 0% user + 0% kernel
  0% 47/migration/5: 0% user + 0% kernel
  0% 106/kworker/u16:3: 0% user + 0% kernel
  0% 2853/kworker/6:3: 0% user + 0% kernel
  0% 3924/kworker/4:2H: 0% user + 0% kernel
  0% 5405/kworker/5:2H: 0% user + 0% kernel
  0% 5411/servicemanager: 0% user + 0% kernel
  0% 5577/android.system.suspend@1.0-service: 0% user + 0% kernel
  0% 5925/android.hardware.thermal@2.0-service.samsung: 0% user + 0% kernel
  0% 6021/rild: 0% user + 0% kernel / faults: 9 minor
  0% 6195/psimon: 0% user + 0% kernel
  0% 6402/wpa_supplicant: 0% user + 0% kernel / faults: 66 minor 6 major
  0% 6538/com.android.networkstack.process: 0% user + 0% kernel / faults: 154 minor
  0% 12271/kworker/u16:14: 0% user + 0% kernel
  0% 12275/kworker/u16:18: 0% user + 0% kernel
  0% 12728/foundation.e.accountmanager: 0% user + 0% kernel / faults: 42 minor
17% TOTAL: 7.4% user + 5.9% kernel + 3.5% iowait + 0.1% softirq
CPU usage from 28ms to 311ms later (2024-03-17 21:27:29.422 to 2024-03-17 21:27:29.704):
  20% 6150/system_server: 4% user + 16% kernel / faults: 393 minor
    20% 14019/AnrConsumer: 8% user + 12% kernel
  7.2% 2162/sugov:4: 0% user + 7.2% kernel
  7.3% 2164/sugov:6: 0% user + 7.3% kernel
  3.5% 408/kworker/u17:0: 0% user + 3.5% kernel
  3.6% 2160/sugov:0: 0% user + 3.6% kernel
  3.7% 2853/kworker/6:3: 0% user + 3.7% kernel
  4.3% 8824/com.f0x1d.logfox: 4.3% user + 0% kernel / faults: 95 minor
16% TOTAL: 1.8% user + 2.7% kernel + 12% iowait
Completed ANR of com.generalmagic.magicearth in 3721ms, latency 1ms

hey cool you try to track this down. That “ANR” report is showing a system usage state at time your touch interaction timeouts after 5 seconds without a response - it’s not per se a crash log.

Do you see more logs from ME at the time of interaction?

Magic Earth has a debug/developer mode you can enable via its setting to see if this makes the logging more verbose.

There’s no update yet for ME in /e/ v1.20 or 1.21 (see the lfs repo), so you could file a bug in /e/ gitlab backlog that you have an issue and they pls update the apk - but having more debug logs could be better. The ANR report is sadly not very specific, just tells the developer that there is UI lag.

I guess some ME network / location process is stalling and block the main thread (and your interaction with the map).

Yes, i did use the record function and do have more log filtered to that App. Seems i can’t update a log file here though?

I always try to do what i can to participate in such projects. If i am able to do so. That is the least i can do.

And i looked up the version of me in the App store. To me it seems it is already the latest. And i got this behaviour on different versions as well.

Recorded log
1710707185.797 10098 12640 12640 E agic.magiceart: Not starting debugger since process cannot load the jdwp agent.
1710707185.822 10098 12640 12640 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
1710707185.833 10098 12640 12640 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 10098; state: ENABLED
1710707185.875 10098 12640 12640 W agic.magiceart: Entry not found
1710707185.875 10098 12640 12640 W agic.magiceart: Entry not found
1710707185.875 10098 12640 12640 W agic.magiceart: Entry not found
1710707185.883 10098 12640 12640 W agic.magiceart: JIT profile information will not be recorded: profile file does not exist.
1710707185.883 10098 12640 12640 W agic.magiceart: JIT profile information will not be recorded: profile file does not exist.
1710707185.883 10098 12640 12640 W agic.magiceart: JIT profile information will not be recorded: profile file does not exist.
1710707185.890 10098 12640 12640 V GraphicsEnvironment: ANGLE Developer option for 'com.generalmagic.magicearth' set to: 'default'
1710707185.891 10098 12640 12640 V GraphicsEnvironment: ANGLE GameManagerService for com.generalmagic.magicearth: false
1710707185.891 10098 12640 12640 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported.
1710707185.892 10098 12640 12640 D NetworkSecurityConfig: No Network Security Config specified, using platform default
1710707185.892 10098 12640 12640 D NetworkSecurityConfig: No Network Security Config specified, using platform default
1710707185.915 10098 12640 12640 I MultiDex: VM with version 2.1.0 has multidex support
1710707185.915 10098 12640 12640 I MultiDex: Installing application
1710707185.915 10098 12640 12640 I MultiDex: VM has multidex support, MultiDex support library is disabled.
1710707186.083 10098 12640 12640 D AppCompatDelegate: Checking for metadata for AppLocalesMetadataHolderService : Service not found
1710707186.183 10098 12640 12640 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10098; state: ENABLED
1710707186.208 10098 12640 12640 W BottomSheetBehavior: Cannot set state: 5
1710707186.208 10098 12640 12640 W BottomSheetBehavior: Cannot set state: 5
1710707186.301 10098 12640 12640 W GEMSdkInitThrea: type=1400 audit(0.0:828): avc: denied { read } for name="soc_id" dev="sysfs" ino=21007 scontext=u:r:untrusted_app:s0:c98,c256,c512,c768 tcontext=u:object_r:sysfs:s0 tclass=file permissive=0 app=com.generalmagic.magicearth
1710707186.301 10098 12640 12640 W GEMSdkInitThrea: type=1300 audit(0.0:828): arch=c00000b7 syscall=56 success=no exit=-13 a0=ffffff9c a1=79ca516cf1 a2=80000 a3=0 items=0 ppid=5897 auid=4294967295 uid=10098 gid=10098 euid=10098 suid=10098 fsuid=10098 egid=10098 sgid=10098 fsgid=10098 tty=(none) ses=4294967295 exe="/system/bin/app_process64" subj=u:r:untrusted_app:s0:c98,c256,c512,c768 key=(null) app=com.generalmagic.magicearth
1710707186.396 10098 12640 13830 D hw-ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
1710707186.402 10098 12640 13830 I Gralloc4: mapper 4.x is not supported
1710707186.402 10098 12640 13830 W Gralloc3: mapper 3.x is not supported
1710707186.404 10098 12640 13830 I gralloc : Arm Module v1.0
1710707186.406 10098 12640 13830 W Gralloc4: allocator 4.x is not supported
1710707186.406 10098 12640 13830 W Gralloc3: allocator 3.x is not supported
1710707186.408 10098 12640 13830 I Gralloc2: Adding additional valid usage bits: 0x0
1710707186.454 10098 12640 13834 I GEMSDK  : ##############################################################################
1710707186.454 10098 12640 13834 I GEMSDK  : ##################             Magic Lane log             ####################
1710707186.454 10098 12640 13834 I GEMSDK  : ################## Date 2024-03-17 21:26:26.453 UTC+01:00 ####################
1710707186.454 10098 12640 13834 I GEMSDK  : ##################      Version 07.01.24.08.00F375F4      ####################
1710707186.454 10098 12640 13834 I GEMSDK  : ##############################################################################
1710707187.617 10098 12640 13834 I TextToSpeech: Sucessfully bound to com.svox.pico
1710707187.617 10098 12640 13834 D [GEMSDK][TTSPlayer]: [initialize] Created TTS
1710707187.817 10098 12640 12640 W FinalizerDaemon: type=1400 audit(0.0:830): avc: denied { getopt } for path="/dev/socket/usap_pool_primary" scontext=u:r:untrusted_app:s0:c98,c256,c512,c768 tcontext=u:r:zygote:s0 tclass=unix_stream_socket permissive=0 app=com.generalmagic.magicearth
1710707187.817 10098 12640 12640 W FinalizerDaemon: type=1300 audit(0.0:830): arch=c00000b7 syscall=209 success=no exit=-13 a0=3 a1=1 a2=27 a3=79e8c126f4 items=0 ppid=5897 auid=4294967295 uid=10098 gid=10098 euid=10098 suid=10098 fsuid=10098 egid=10098 sgid=10098 fsgid=10098 tty=(none) ses=4294967295 exe="/system/bin/app_process64" subj=u:r:untrusted_app:s0:c98,c256,c512,c768 key=(null) app=com.generalmagic.magicearth
1710707187.849 10098 12640 13826 I TextToSpeech: Connected to TTS engine
1710707187.851 10098 12640 13909 I TextToSpeech: Setting up the connection to TTS engine...
1710707188.215 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onSurfaceChanged(javax.microedition.khronos.opengles.GL10, int, int)(MapSurfaceView.kt:235) waiters=0 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 507ms
1710707188.949 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in void com.magiclane.sound.TTSPlayer.onInit$lambda$4(int, com.magiclane.sound.TTSPlayer) for 629ms
1710707188.949 10098 12640 13829 D [GEMSDK][TTSPlayer]: [onInit] status = 0, initStatus = 0
1710707188.986 10098 12640 13909 D [GEMSDK][TTSPlayer]: [TTSEngineInitialization] Default language = de, country = DE
1710707189.002 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: ar_XB
1710707189.002 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for XB
1710707189.002 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.002 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.008 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: en_DG
1710707189.008 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for DG
1710707189.008 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.008 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.015 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: en_XA
1710707189.015 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for XA
1710707189.015 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.015 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.017 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: es_EA
1710707189.017 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for EA
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.017 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: es_IC
1710707189.017 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for IC
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.017 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.036 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: sq_XK
1710707189.036 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for XK
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.036 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: sr_XK_#Cyrl
1710707189.036 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for XK
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.036 10098 12640 13909 W TextToSpeech: Couldn't retrieve ISO 3166 country code for locale: sr_XK_#Latn
1710707189.036 10098 12640 13909 W TextToSpeech: java.util.MissingResourceException: Couldn't find 3-letter country code for XK
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.Locale.getISO3Country(Locale.java:1777)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.lambda$isLanguageAvailable$16(TextToSpeech.java:1836)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$$ExternalSyntheticLambda11.run(Unknown Source:2)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:2361)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:813)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:803)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.speech.tts.TextToSpeech.isLanguageAvailable(TextToSpeech.java:1825)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:270)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at com.magiclane.sound.TTSPlayer$AsyncTTSEngineInitializationFinished.doInBackground(TTSPlayer.kt:181)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$3.call(AsyncTask.java:394)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
1710707189.036 10098 12640 13909 W TextToSpeech: 	at java.lang.Thread.run(Thread.java:920)
1710707189.040 10098 12640 13909 D [GEMSDK][TTSPlayer]: [TTSEngineInitialization] Language = de, country = DE is supported
1710707189.263 10098 12640 13833 W agic.magiceart: Long monitor contention with owner GEMSdkThread (13829) at boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message)(GEMSdkThread.kt:37) waiters=0 in void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10) for 312ms
1710707189.499 10098 12640 12640 I Choreographer: Skipped 33 frames!  The application may be doing too much work on its main thread.
1710707189.514 10098 12640 13829 D [GEMSDK][TTSPlayer]: [setLanguage] languageISO2Code = de, countryISO2Code = DE
1710707189.526 10098 12640 13829 D [GEMSDK][TTSPlayer]: [setLanguage] language = de, country = DE
1710707189.542 10098 12640 13829 D [GEMSDK][TTSPlayer]: [setLanguage] languageISO2Code = de, countryISO2Code = DE
1710707189.555 10098 12640 13829 D [GEMSDK][TTSPlayer]: [setLanguage] language = de, country = DE
1710707191.323 10098 12640 13937 D ProfileInstaller: Skipping profile installation for com.generalmagic.magicearth
1710707193.146 10098 12640 13826 I OpenGLRenderer: Davey! duration=9223371368210ms; Flags=0, FrameTimelineVsyncId=20390, IntendedVsync=668643547468, Vsync=668693547466, InputEventId=0, HandleInputStart=668702549906, AnimationStart=668702550945, PerformTraversalsStart=668702689599, DrawStart=668713364599, FrameDeadline=668676880800, FrameInterval=668702546676, FrameStartTime=16666666, SyncQueued=668716419522, SyncStart=668717330637, IssueDrawCommandsStart=668717853522, SwapBuffers=668724527945, FrameCompleted=9223372036854775807, DequeueBufferDuration=18885, QueueBufferDuration=897807, GpuCompleted=9223372036854775807, SwapBuffersCompleted=668725779329, DisplayPresentTime=0,
1710707193.170 10098 12640 12640 D CompatibilityChangeReporter: Compat change id reported: 163400105; UID 10098; state: ENABLED
1710707193.170 10098 12640 12640 D InputMethodManager: showSoftInput() view=androidx.appcompat.widget.AppCompatEditText{b55aadf VFED..CL. .F....ID 30,0-744,114 #7f090439 app:id/search_view_edit_text aid=1073741824} flags=1 reason=SHOW_SOFT_INPUT
1710707193.397 10098 12640 13830 D OpenGLRenderer: endAllActiveAnimators on 0x7b63802610 (RippleDrawable) with handle 0x7a73836ad0
1710707193.405 10098 12640 12640 D InsetsController: show(ime(), fromIme=true)
1710707215.448 10098 12640 12640 D InputMethodManager: showSoftInput() view=androidx.appcompat.widget.AppCompatEditText{b55aadf VFED..CL. .F.P.... 30,0-576,114 #7f090439 app:id/search_view_edit_text aid=1073741824} flags=0 reason=SHOW_SOFT_INPUT
1710707215.522 10098 12640 12640 D InsetsController: show(ime(), fromIme=true)
1710707221.649 10098 12640 13830 D OpenGLRenderer: endAllActiveAnimators on 0x7b638a0e70 (RippleDrawable) with handle 0x7a73864310
1710707223.279 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 1.251s
1710707225.864 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 2.559s
1710707227.766 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 1.876s
1710707230.187 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 2.118s
1710707230.907 10098 12640 12640 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0 in boolean com.magiclane.androidsphere.map.MapSurfaceView._init_$lambda$2(com.magiclane.androidsphere.map.MapSurfaceView, android.view.View, android.view.MotionEvent) for 711ms
1710707230.907 10098 12640 13829 W agic.magiceart: Long monitor contention with owner GLThread 686 (13833) at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=1 in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 694ms
1710707230.949 10098 12640 14008 I OpenGLRenderer: Davey! duration=9223371330340ms; Flags=0, FrameTimelineVsyncId=22716, IntendedVsync=706514135095, Vsync=706514135095, InputEventId=466243658, HandleInputStart=706515951802, AnimationStart=706515966110, PerformTraversalsStart=706515966456, DrawStart=706519742841, FrameDeadline=706530801761, FrameInterval=706515949572, FrameStartTime=16666666, SyncQueued=706521258072, SyncStart=706521291072, IssueDrawCommandsStart=706521518456, SwapBuffers=706524514725, FrameCompleted=9223372036854775807, DequeueBufferDuration=15385, QueueBufferDuration=627192, GpuCompleted=9223372036854775807, SwapBuffersCompleted=706525694149, DisplayPresentTime=0,
1710707231.099 10098 12640 13826 I OpenGLRenderer: Davey! duration=9223371330189ms; Flags=0, FrameTimelineVsyncId=22734, IntendedVsync=706664370096, Vsync=706664370096, InputEventId=0, HandleInputStart=706664888456, AnimationStart=706664889418, PerformTraversalsStart=706665059956, DrawStart=706665127725, FrameDeadline=706697703428, FrameInterval=706664885725, FrameStartTime=16666666, SyncQueued=706665223648, SyncStart=706665662148, IssueDrawCommandsStart=706665796725, SwapBuffers=706667968533, FrameCompleted=9223372036854775807, DequeueBufferDuration=16693, QueueBufferDuration=676692, GpuCompleted=9223372036854775807, SwapBuffersCompleted=706668973341, DisplayPresentTime=0,
1710707231.116 10098 12640 13826 I OpenGLRenderer: Davey! duration=9223371330173ms; Flags=0, FrameTimelineVsyncId=22736, IntendedVsync=706681053849, Vsync=706681053849, InputEventId=0, HandleInputStart=706681518995, AnimationStart=706681519956, PerformTraversalsStart=706681664687, DrawStart=706681721687, FrameDeadline=706714387181, FrameInterval=706681516264, FrameStartTime=16666666, SyncQueued=706681798610, SyncStart=706681824764, IssueDrawCommandsStart=706681904572, SwapBuffers=706682875764, FrameCompleted=9223372036854775807, DequeueBufferDuration=6077, QueueBufferDuration=7674539, GpuCompleted=9223372036854775807, SwapBuffersCompleted=706690807264, DisplayPresentTime=0,
1710707231.200 10098 12640 14008 I OpenGLRenderer: Davey! duration=9223371330090ms; Flags=0, FrameTimelineVsyncId=22746, IntendedVsync=706764562326, Vsync=706764562326, InputEventId=927670063, HandleInputStart=706764987571, AnimationStart=706769333264, PerformTraversalsStart=706769460918, DrawStart=706775040418, FrameDeadline=706797895658, FrameInterval=706764983418, FrameStartTime=16666666, SyncQueued=706776161418, SyncStart=706776233071, IssueDrawCommandsStart=706776538187, SwapBuffers=706779409187, FrameCompleted=9223372036854775807, DequeueBufferDuration=22577, QueueBufferDuration=965231, GpuCompleted=9223372036854775807, SwapBuffersCompleted=706780652764, DisplayPresentTime=0,
1710707231.234 10098 12640 13826 I OpenGLRenderer: Davey! duration=9223371330056ms; Flags=0, FrameTimelineVsyncId=22750, IntendedVsync=706797950056, Vsync=706797950056, InputEventId=372948400, HandleInputStart=706798512687, AnimationStart=706803305110, PerformTraversalsStart=706803476533, DrawStart=706803547071, FrameDeadline=706831283388, FrameInterval=706798508956, FrameStartTime=16666666, SyncQueued=706803874456, SyncStart=706803945264, IssueDrawCommandsStart=706804299879, SwapBuffers=706806891071, FrameCompleted=9223372036854775807, DequeueBufferDuration=25923, QueueBufferDuration=705307, GpuCompleted=9223372036854775807, SwapBuffersCompleted=706807873302, DisplayPresentTime=0,
1710707235.225 10098 12640 12640 W BottomSheetBehavior: Cannot set state: 5
1710707235.257 10098 12640 14008 I OpenGLRenderer: Davey! duration=9223371326032ms; Flags=2, FrameTimelineVsyncId=23020, IntendedVsync=710822035644, Vsync=710822035644, InputEventId=0, HandleInputStart=710822035644, AnimationStart=710822035644, PerformTraversalsStart=710822035644, DrawStart=710822035644, FrameDeadline=710855368976, FrameInterval=0, FrameStartTime=16666666, SyncQueued=710826257530, SyncStart=710826258261, IssueDrawCommandsStart=710826409953, SwapBuffers=710827237530, FrameCompleted=9223372036854775807, DequeueBufferDuration=14346, QueueBufferDuration=424039, GpuCompleted=9223372036854775807, SwapBuffersCompleted=710827875415, DisplayPresentTime=0,
1710707235.724 10098 12640 13826 I OpenGLRenderer: Davey! duration=9223371325564ms; Flags=0, FrameTimelineVsyncId=23061, IntendedVsync=711289849294, Vsync=711289849294, InputEventId=0, HandleInputStart=711290417184, AnimationStart=711290418145, PerformTraversalsStart=711290584876, DrawStart=711292332953, FrameDeadline=711323182626, FrameInterval=711290414337, FrameStartTime=16666666, SyncQueued=711293295953, SyncStart=711293365837, IssueDrawCommandsStart=711293540645, SwapBuffers=711295288914, FrameCompleted=9223372036854775807, DequeueBufferDuration=22538, QueueBufferDuration=684115, GpuCompleted=9223372036854775807, SwapBuffersCompleted=711296444030, DisplayPresentTime=0,
1710707235.742 10098 12640 13827 I OpenGLRenderer: Davey! duration=9223371325548ms; Flags=0, FrameTimelineVsyncId=23063, IntendedVsync=711306488741, Vsync=711306488741, InputEventId=0, HandleInputStart=711307061491, AnimationStart=711307062568, PerformTraversalsStart=711307224337, DrawStart=711307292030, FrameDeadline=711339822073, FrameInterval=711307058799, FrameStartTime=16666666, SyncQueued=711307580645, SyncStart=711307636953, IssueDrawCommandsStart=711307763261, SwapBuffers=711308785261, FrameCompleted=9223372036854775807, DequeueBufferDuration=18461, QueueBufferDuration=9458346, GpuCompleted=9223372036854775807, SwapBuffersCompleted=711318841337, DisplayPresentTime=0,
1710707244.288 10098 12640 13830 D OpenGLRenderer: endAllActiveAnimators on 0x7b6390df00 (RippleDrawable) with handle 0x7a73823810
1710707244.378 10098 12640 13829 D [GEMSDK][PCMPlayer]: [release] Release PCM player
1710707249.727 10098 12640 13818 I agic.magiceart: Thread[6,tid=13818,WaitingInMainSignalCatcherLoop,Thread*=0x7bc36f7e90,peer=0x133c00b0,"Signal Catcher"]: reacting to signal 3
1710707250.089 10098 12640 13818 I agic.magiceart: Wrote stack traces to tombstoned

that’s good, more debug! but we learn: opengl is slow. But why? Could be device dependant. What device is the log from? you got any other issues with OpenGL (used to accelerate drawing textures, either 2d or 3d) ?

D OpenGLRenderer: endAllActiveAnimators on 0x7b638a0e70 (RippleDrawable) with handle 0x7a73864310
W agic.magiceart: Long monitor contention with owner GLThread 686 (13833)
  at void com.magiclane.androidsphere.map.MapSurfaceView$Renderer.onDrawFrame(javax.microedition.khronos.opengles.GL10)(MapSurfaceView.kt:226) waiters=0
  in boolean com.magiclane.androidsphere.app.GEMSdkThread.initHandler$lambda$1(com.magiclane.androidsphere.app.GEMSdkThread, android.os.Message) for 1.251s
I OpenGLRenderer: Davey! duration=9223371330340ms;..

There were some reports of app crashes at the Google Play section mid January. But it’s not saying on what version. Can you reproduce the behaviour with the 7.1.23.49 release on the old device?

With other reports in this forum missing, I guess this hits just some devices. If you’d show it to ME developers, they’d say “pls update”.

I think I have found the cause for my problems.
I had the maps on my MicroSD card and since I moved them to internal memory and set the according option in ME as well, I had no hiccups so far - only one crash today but not while using but after exiting the app. Navigation calculation and other stuff worked well so far.

I will monitor this for some time and report back again.

2 Likes

with I/O wait in mind I looked through the logs again, but it really is only warning on the GL threads.

Android has a neat on-device(!) gpu monitoring tool that draws its perf plot on-screen. It has an “XFer” (purple) category that resemble I/O.

As MagicEarth is using a native devkit to draw the frames, the tool can’t be used (Organicmaps can have its drawing perf seen that way though). You can post this thread to the ME developers and ask how they’d debug/profile slow card flash storage for maps.

1 Like