setOnClusterItemClickListener: На элементе кластера ошибка clickListener - PullRequest
1 голос
/ 08 ноября 2019

Я использую библиотеку android-maps-utils, которая, кажется, вызывает ошибку на com.google.maps.api.

У меня ошибка при реализации пользовательского onCLusterItemClickListener. Ошибка происходит в некоторых устройствах. Я использую kotlin.

Это происходит, когда я нажимаю на элемент кластера. Я настроил onclusterItemClickListener в диспетчере кластеров с простым журналом:

clusterManager.setOnClusterItemClickListener{markerItem ->  clusterItemClickListener(markerItem)
        }

private fun clusterItemClickListener(markerItem: MarkerItem?): Boolean{
        Timber.i(markerItem.toString())
        return false
    }

Когда я нажимаю на элемент кластера, я получаю следующую ошибку. Если я пытаюсь установить точку останова в журнале консоли, ожидая несколько секунд после ее остановки, я также получаю сообщение об ошибке, что-то странное, чего я никогда не видел:

A/art: art/runtime/stack.cc:153] Check failed: success Failed to read the this object in boolean com.google.maps.api.android.lib6.gmm6.vector.m.a(float, float, com.google.maps.api.android.lib6.gmm6.vector.camera.b, java.util.List)
A/art: art/runtime/runtime.cc:399] Runtime aborting...
    art/runtime/runtime.cc:399] Aborting thread:
    art/runtime/runtime.cc:399] "JDWP" prio=5 tid=3 Runnable
    art/runtime/runtime.cc:399]   | group="" sCount=0 dsCount=0 obj=0x12c6a0a0 self=0xb8a1ffc8
    art/runtime/runtime.cc:399]   | sysTid=4523 nice=0 cgrp=default sched=0/0 handle=0xb44a1930
    art/runtime/runtime.cc:399]   | state=R schedstat=( 92063281 11468014 660 ) utm=5 stm=4 core=0 HZ=100
    art/runtime/runtime.cc:399]   | stack=0xb43a5000-0xb43a7000 stackSize=1014KB
    art/runtime/runtime.cc:399]   | held mutexes= "abort lock" "mutator lock"(shared held)
    art/runtime/runtime.cc:399]   native: #00 pc 0035ca0d  /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::ArtMethod*, void*)+116)
    art/runtime/runtime.cc:399]   native: #01 pc 0033d863  /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+138)
    art/runtime/runtime.cc:399]   native: #02 pc 00321955  /system/lib/libart.so (art::AbortState::DumpThread(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, art::Thread*) const+20)
    art/runtime/runtime.cc:399]   native: #03 pc 00321c23  /system/lib/libart.so (art::Runtime::Abort()+622)
    art/runtime/runtime.cc:399]   native: #04 pc 000f3d0d  /system/lib/libart.so (art::LogMessage::~LogMessage()+2212)
    art/runtime/runtime.cc:399]   native: #05 pc 0032c6a5  /system/lib/libart.so (art::StackVisitor::GetThisObject() const+452)
    art/runtime/runtime.cc:399]   native: #06 pc 0013ebf5  /system/lib/libart.so (art::GetThisVisitor::VisitFrame()+48)
    art/runtime/runtime.cc:399]   native: #07 pc 0032d769  /system/lib/libart.so (art::StackVisitor::WalkStack(bool)+204)
    art/runtime/runtime.cc:399]   native: #08 pc 00143a73  /system/lib/libart.so (art::Dbg::GetThisObject(unsigned long long, unsigned long long, unsigned long long*)+538)
    art/runtime/runtime.cc:399]   native: #09 pc 0025677d  /system/lib/libart.so (art::JDWP::SF_ThisObject(art::JDWP::JdwpState*, art::JDWP::Request*, art::JDWP::ExpandBuf*)+36)
    art/runtime/runtime.cc:399]   native: #10 pc 002599f5  /system/lib/libart.so (art::JDWP::JdwpState::ProcessRequest(art::JDWP::Request*, art::JDWP::ExpandBuf*, bool*)+676)
    art/runtime/runtime.cc:399]   native: #11 pc 0025addf  /system/lib/libart.so (art::JDWP::JdwpState::HandlePacket()+106)
    art/runtime/runtime.cc:399]   native: #12 pc 003eab95  /system/lib/libart.so (art::JDWP::JdwpAdbState::ProcessIncoming()+1216)
    art/runtime/runtime.cc:399]   native: #13 pc 0025b293  /system/lib/libart.so (art::JDWP::JdwpState::Run()+298)
    art/runtime/runtime.cc:399]   native: #14 pc 0025c0ff  /system/lib/libart.so (art::JDWP::StartJdwpThread(void*)+10)
    art/runtime/runtime.cc:399]   native: #15 pc 00041acb  /system/lib/libc.so (__pthread_start(void*)+30)
    art/runtime/runtime.cc:399]   native: #16 pc 00019355  /system/lib/libc.so (__start_thread+6)
    art/runtime/runtime.cc:399]   (no managed stack frames)
    art/runtime/runtime.cc:399] Dumping all threads without appropriate locks held: thread list lock
    ...
    art/runtime/runtime.cc:399]   | stack=0x9ec4f000-0x9ec51000 stackSize=1038KB
    art/runtime/runtime.cc:399]   | held mutexes=
    art/runtime/runtime.cc:399]   native: #02 pc 002b0235  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, long long, int, bool, art::ThreadState)+440)
    art/runtime/runtime.cc:399]   native: #03 pc 002b11ad  /system/lib/libart.so (art::Monitor::Wait(art::Thread*, art::mirror::Object*, long long, int, bool, art::ThreadState)+112)
    art/runtime/runtime.cc:399]   native: #04 pc 002c22c5  /system/lib/libart.so (art::Object_waitJI(_JNIEnv*, _jobject*, long long, int)+36)
    art/runtime/runtime.cc:399]   native: #05 pc 00000585  /system/framework/arm/boot.oat (Java_java_lang_Object_wait__JI+96)
    art/runtime/runtime.cc:399]   at com.android.okhttp.ConnectionPool.performCleanup(ConnectionPool.java:305)
    art/runtime/runtime.cc:399]   - locked <0x0b186b30> (a com.android.okhttp.ConnectionPool)
    art/runtime/runtime.cc:399]   at com.android.okhttp.ConnectionPool.runCleanupUntilPoolIsEmpty(ConnectionPool.java:242)
    art/runtime/runtime.cc:399]   at com.android.okhttp.ConnectionPool.-wrap0(ConnectionPool.java:-1)
    art/runtime/runtime.cc:399]   at com.android.okhttp.ConnectionPool$1.run(ConnectionPool.java:97)
    art/runtime/runtime.cc:399]   at java.lang.Thread.run(Thread.java:818)
    art/runtime/runtime.cc:399] 
    art/runtime/runtime.cc:399] "arch_disk_io_2" prio=5 tid=43 Waiting
    art/runtime/runtime.cc:399]   | state=S schedstat=( 30493072 9781043 49 ) utm=3 stm=0 core=2 HZ=100
    art/runtime/runtime.cc:399]   | stack=0x9eb45000-0x9eb47000 stackSize=1038KB
    art/runtime/runtime.cc:399]   | held mutexes=
A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 4523 (JDWP)

Я обрезал ошибку стека, потому чтоэто слишком долго.

Я пытался использовать com.google.maps.android:android-maps-utils:0.5 с com.google.android.gms: play-services-maps: 17.0.0 библиотека:

В Aquaris U Plus в Android 7.1.1 (16 ГБ, 2 ГБ ОЗУ) такой ошибки не было. Уровень ошибок: 0%.

С Motorolla MotoG 3, Android 6.0.1 (8 ГБ, 1 ГБ ОЗУ). Уровень ошибок 98%.

DOOGEE X5 3G, Android 6.0 (8 ГБ, 1 ГБ ОЗУ). Уровень ошибок 100%

Я также пытался использовать com.google.maps.android:android-maps-utils:0.6.2 с телефонами с ошибками, но ошибка сохраняется.

Я могу предоставить любую дополнительную информацию, если это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...