/system/lib/libart.so 发生本地崩溃

14

我在Play商店上有一个应用程序,它有一个IntentService,当应用程序启动时会执行一些工作,在Android 5.0上导致本机崩溃。该服务只是扫描应用程序资产文件夹以进行更新。

具体来说,这个崩溃似乎发生在三星S5升级到棒棒糖后,但我不知道它是否严格关联该设备,因为这是一款意大利应用程序,在这里仍然是唯一广泛传播(即我所知道的)的运行棒棒糖的设备。但是,我在带有原生Android 5的模拟器上尝试了它,并且工作正常。

我附上了堆栈跟踪,任何关于如何继续的帮助都将不胜感激......对于本机问题,我不知道该怎么办。

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'samsung/kltexx/klte:5.0/LRX21T/G900FXXU1BNL9:user/release-keys'
Revision: '14'
ABI: 'arm'
pid: 24219, tid: 24259, name: IntentService[I >>> it.mydomain.myapp <<<
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
r0 afcb8c00 r1 001000e6 r2 af201428 r3 00000000
r4 76eb1338 r5 700981c0 r6 af50e4c2 r7 afcb8c00
r8 af201070 r9 b4f7e300 sl b4efac64 fp fffffb18
ip 00100002 sp af200f60 lr b4cd52ab pc b4cd52ca cpsr 600f0030

backtrace:
#00 pc 000d32ca /system/lib/libart.so (art::ClassLinker::FindClassInPathClassLoader(art::ScopedObjectAccessAlreadyRunnable&, art::Thread*, char const*, art::Handle<art::mirror::ClassLoader>)+77)
#01 pc 000d3739 /system/lib/libart.so (_ZN3art11ClassLinker9FindClassEPNS_6ThreadEPKcNS_6HandleINS_6mirror11ClassLoaderEEE.part.404+356)
#02 pc 000d5ded /system/lib/libart.so (art::ClassLinker::CreateArrayClass(art::Thread*, char const*, art::Handle<art::mirror::ClassLoader>)+88)
#03 pc 000d37d1 /system/lib/libart.so (_ZN3art11ClassLinker9FindClassEPNS_6ThreadEPKcNS_6HandleINS_6mirror11ClassLoaderEEE.part.404+508)
#04 pc 000d5ded /system/lib/libart.so (art::ClassLinker::CreateArrayClass(art::Thread*, char const*, art::Handle<art::mirror::ClassLoader>)+88)
#05 pc 000d37d1 /system/lib/libart.so (_ZN3art11ClassLinker9FindClassEPNS_6ThreadEPKcNS_6HandleINS_6mirror11ClassLoaderEEE.part.404+508)
#06 pc 001fe583 /system/lib/libart.so (art::Array_createObjectArray(_JNIEnv*, _jclass*, _jclass*, int)+422)

1
这个问题解决了吗?我遇到了类似的错误。 - jjwhite01
@jjwhite01 不幸的是,目前没有任何解决方案,但这似乎非常特定于此手机和此版本。我们只希望三星能够提供更新。 - bigstones
这篇文章提到了Android 5.0中的IntentService可能会导致应用程序崩溃。 - Scott Montgomerie
你找到解决方案了吗?我也遇到了同样的问题...项目相当古老而且庞大(我们甚至是在Eclipse中构建它 :)),而该应用在三星的Android 5设备上根本无法运行。 - AlexeyGorovoy
@AlexeyGorovoy 不好意思,我放弃了。 - bigstones
我也遇到了这个问题。我正在使用原生库GStreamer,运行Android 5.1.1的Nexus 5。 - MarkyDD
1个回答

4

已经有一段时间了,但据我记得,默认情况下它不是启用的,需要显式地启用它。此外,在这里还有一些参考资料:https://dev59.com/WJTfa4cB1Zd3GeqPPl3N - Amit
1
在我们的情况下,我们已经明确地使用了zopfli并遇到了问题,然后将其删除。默认情况下,它不会被使用。 - Amit
  1. 粘贴您的崩溃日志(或链接到您已经发布的任何地方)
  2. 这只发生在三星+Android 5.x组合上吗?如果不是,那么可能不是与zopfli有关的崩溃,而是其他问题
Zopfli问题仅在三星+ Android 5.x上出现,并且已经解决,但由于不一致性,不建议使用。与崩溃无关: 另一个建议是采用应用程序包方式进行构建,这样Google将优化构建和下载大小,并且是现在最推荐的方式。
- Amit
信号11(SIGSEGV),代码2(SEGV_ACCERR) art :: ArtField_getNameNative(_JNIEnv *,_jobject *)三星5.1仅限#00 pc 000000000020d9d2 / system / lib / libart.so(art :: ArtField_getNameNative(_JNIEnv *,_jobject *)+ 281) #00 pc 00000000000000e7 / system / framework / arm / boot.oat - ninad thakare
信号 11 SIGSEGV,代码 2 SEGV_ACCERR 的意思是段错误。 - ninad thakare
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接