由于我从本地数据库请求数据,因此我的应用程序启动后,我立即收到以下本机崩溃日志(只能通过PlayStore而不是Crashlytics获取): 唯一向我显示一些信息的行是:
6个0000000000043688 /data/app/br.com.ampli-A-oKgSqV0pfD7IL5xQWvwQ==/base.apk!libobjectbox-jni.so (偏移量0x37e000)(Java_io_objectbox_query_Query_nativeFindFirst + 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.1.0”时,我在我的应用程序版本“ 1.0.2”上运行得很好。我没有更改任何实体上的任何属性。 首先我以为是扩展功能查询首先使用:
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更改为all [0]
inline fun <reified T : Any> BoxStore.queryFirst(model: T): T? {
return try {
boxFor(model::class.java).all[0]
} catch (e: Exception) {
null
}
}
它也没有解决,但是错误消息行更改为:
#23 pc 000000000001c903 /data/app/br.com.ampli-VLlxlv9pljML2jxVG8UJkw == / base.apk(偏移 0x4ea000)(Java_io_objectbox_Cursor_nativeFirstEntity + 38)#24个 000000000003f38f /data/app/br.com.ampli-VLlxlv9pljML2jxVG8UJkw==/oat/arm/base.odex (偏移量0x3f000)(io.objectbox.BoxStore.nativeDiagnose [DEDUPED] +102)
某些特定设备正在发生这种情况,我的所有团队都测试了我的发布版本,并且工作正常
这是出现问题的设备列表:
由于我们没有太多的用户,因此每次崩溃都很重要
我已经打开并在此处发布:https://github.com/objectbox/objectbox-java/issues/851,以获取更多信息。
如果有人对该做什么有任何想法,请多谢,谢谢。