Коробка с предметами, вызывающая родной Cra sh с QueryFirst - PullRequest
0 голосов
/ 24 апреля 2020

Я получаю следующий собственный журнал cra sh (который я могу получить только в PlayStore, а не в Crashlytics), как только мое приложение запускается, так как я запрашиваю данные из локальной базы данных: единственная строка, которая показала мне некоторую информацию было:

6 р c 0000000000043688 /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/base.apk!libobjectbox-jni.so (смещение 0x37e000) (Java_io_Find_Fir_Firectory_F_F_F_D_W_F_D_W_F_D_WER_FERQUID) 68)

Это полная обратная трассировка:

pid: 0, tid: 0 >>> br.com.ampli <<<

backtrace:
  #00  pc 0000000000083134  /apex/com.android.runtime/lib64/bionic/libc.so (abort+160)
  #01  pc 00000000004b3c08  /apex/com.android.runtime/lib64/libart.so (art::Runtime::Abort(char const*)+2376)
  #02  pc 000000000000c5b4  /system/lib64/libbase.so (android::base::LogMessage::~LogMessage()+608)
  #03  pc 0000000000374a94  /apex/com.android.runtime/lib64/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1592)
  #04  pc 00000000003a74c8  /apex/com.android.runtime/lib64/libart.so (art::JNI::SetObjectField(_JNIEnv*, _jobject*, _jfieldID*, _jobject*)+924)
  #05  pc 00000000000262a4  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/base.apk!libobjectbox-jni.so (offset 0x37e000)
  #06  pc 0000000000043688  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/base.apk!libobjectbox-jni.so (offset 0x37e000) (Java_io_objectbox_query_Query_nativeFindFirst+68)
  #07  pc 000000000003fb7c  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.odex (art_jni_trampoline+140)
  #08  pc 0000000000137334  /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
  #09  pc 000000000014606c  /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244)
  #10  pc 00000000002e0cd0  /apex/com.android.runtime/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+384)
  #11  pc 00000000002dbfb0  /apex/com.android.runtime/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+912)
  #12  pc 00000000005a030c  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+596)
  #13  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #14  pc 000000000047941c  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (io.objectbox.query.Query$a.call+28)
  #15  pc 000000000059bbe4  /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1740)
  #16  pc 0000000000131a14  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20)
  #17  pc 0000000000476786  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (io.objectbox.BoxStore.a+42)
  #18  pc 00000000005a0610  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+1368)
  #19  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #20  pc 0000000000476886  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (io.objectbox.BoxStore.a+6)
  #21  pc 00000000005a0610  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+1368)
  #22  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #23  pc 0000000000479a40  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (io.objectbox.query.Query.d+40)
  #24  pc 00000000005a0610  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+1368)
  #25  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #26  pc 00000000002442c6  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (e.a.a.j1.d.a$a.d+54)
  #27  pc 00000000005a0610  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+1368)
  #28  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #29  pc 000000000047fe9a  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (b1.p.i.a.a.c+18)
  #30  pc 000000000059bbe4  /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1740)
  #31  pc 0000000000131a14  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20)
  #32  pc 000000000048797e  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (a0.a.p0.run+214)
  #33  pc 000000000059bbe4  /apex/com.android.runtime/lib64/libart.so (MterpInvokeInterface+1740)
  #34  pc 0000000000131a14  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_interface+20)
  #35  pc 000000000048fcd4  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (a0.a.c2.b.a)
  #36  pc 00000000005a0610  /apex/com.android.runtime/lib64/libart.so (MterpInvokeVirtualQuick+1368)
  #37  pc 0000000000135594  /apex/com.android.runtime/lib64/libart.so (mterp_op_invoke_virtual_quick+20)
  #38  pc 000000000048ee5e  /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/oat/arm64/base.vdex (a0.a.c2.b$a.run+534)
  #39  pc 00000000002b191c  /apex/com.android.runtime/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.18252570399552585066)+240)
  #40  pc 000000000058b6e8  /apex/com.android.runtime/lib64/libart.so (artQuickToInterpreterBridge+1012)
  #41  pc 0000000000140468  /apex/com.android.runtime/lib64/libart.so (art_quick_to_interpreter_bridge+88)
  #42  pc 0000000000137334  /apex/com.android.runtime/lib64/libart.so (art_quick_invoke_stub+548)
  #43  pc 000000000014606c  /apex/com.android.runtime/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+244)
  #44  pc 00000000004ab72c  /apex/com.android.runtime/lib64/libart.so (art::(anonymous namespace)::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::(anonymous namespace)::ArgArray*, art::JValue*, char const*)+104)
  #45  pc 00000000004ac7c0  /apex/com.android.runtime/lib64/libart.so (art::InvokeVirtualOrInterfaceWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue const*)+416)
  #46  pc 00000000004ecb00  /apex/com.android.runtime/lib64/libart.so (art::Thread::CreateCallback(void*)+1176)
  #47  pc 00000000000e28c0  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36)
  #48  pc 000000000008503c  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

Это началось из ниоткуда, я просто отлично работал над версией моего приложения "1.0.2", когда я обновился до «1.1.0» перестало работать. Я не изменил никакую собственность на любую сущность. Сначала я подумал, что это функция расширения queryFirst, которую я использую:

inline fun <reified T : Any> BoxStore.queryFirst(model: T): T? {
    return this.boxFor(model::class.java).query().build().findFirst()
}

Поэтому я изменил все вызовы на нее по умолчанию:

BoxStore.getDefault().boxFor(Course::class.java).query().build().findFirst()

Но это не помогло , поэтому я пошел дальше и изменил все findFirst на все [0]

inline fun <reified T : Any> BoxStore.queryFirst(model: T): T? {
    return try {
        boxFor(model::class.java).all[0]
    } catch (e: Exception) {
        null
    }
}

Это также не помогло, но строка сообщения об ошибке изменилась на:

# 23 p c 000000000001c903 /data/app/br.com.ampli-VLlxlv9pljML2jxVG8UJkw==/base.apk (смещение 0x4ea000) (Java_io_objectbox_Cursor_nativeFirstEntity + 38) # 24 pc 000000000003fli_j_jl_jl_djlx arm / base.odex (смещение 0x3f000) (io.objectbox.BoxStore.nativeDiagnose [УДАЛЕНО] +102)

Это происходит с некоторыми указанными c устройствами, и вся моя команда проверила мою версию сборки и он работает просто отлично

Это список устройств, возникла проблема:

  • Samsung Galaxy S9 + (star2qltechn), 5632 МБ ОЗУ, Android 10
  • Motorola moto g (7) (рекавери), 3584 МБ ОЗУ, Android 9
  • Motorola Motorola one vision (kane_sprout), 3840 МБ ОЗУ, Android 10
  • Motorola Moto X (4) (Payton), 2816 МБ ОЗУ, Android 9
  • Redmi Redmi Note 8 (gink go) , 3840 МБ ОЗУ, Android 9
  • Samsung Galaxy A30s (a30s), 3840 МБ ОЗУ, Android 10
  • Motorola Motorola One Vision (kane_sprout), 3840 МБ ОЗУ, Android 10

Поскольку у нас не так много пользователей, каждый cra sh имеет значение

Я уже открыл и выдаю здесь: https://github.com/objectbox/objectbox-java/issues/851 для получения дополнительной информации.

Если у кого-то есть идеи о том, что делать, я благодарен заранее.

...