在未知的未知本地崩溃 [英] Native crash in unknown unknown

查看:128
本文介绍了在未知的未知本地崩溃的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个应用程序,它完全是用Java编写的 - 没有本土code任何 - 我已经两次对开发者控制台乡土崩溃未知的未知崩溃报告。我不知道从哪里开始定位问题的根源。搜索才发现这种类型的崩溃在Android的错误,NDK使用或马车第三方库的情况。

有关它的价值,这里是某一条记录:

  *** *** *** *** *** *** *** *** *** *** *** *** ** * *** *** ***
建立指纹:三星/ m0xx / M0:4.3 / JSS15J / I9300XXUGMJ9:用户/释放键
修订:'12'
PID:2197,TID:2197,姓名:.test.app>>> com.test.app<<<
信号6(SIGABRT),code -6(SI_TKILL),故障地址--------
R0,R1 FFFFFFFC R2 bef3f3f8 00000010 R3 FFFFFFFF
R4 41619610 R5 00000000 R6 41619624 R7 000000fc
R8 41619658 R9 00000014 SL 418cc238 FP bef3f56c
IP bef3f3f8 SP bef3f3d8 LR 40115045 PC 401a1574 CPSR 280b0010
D0 0000000100110102 D1 0000000044a01000
D2 D3 0000000000000000 0000000000000000
D4 000002d044340000 D5 0000000042a40000
D6 D7 0000000000000000 000000003f800000
D8 0000000000000030 D9 43010000亿
D10 0000000042400000 0000000000000000 D11
D12 D13 0000000000000000 0000000000000000
D14 D15 0000000000000000 0000000000000000
D16 00002bdd67c11c72 D17 0000000000000000
D18 D19 0000000000000000 2200220022002200
D20 0000000000000003 D21 0000000000000003
D22 0000000000000002 D23 0000000000000003
D24 2222222222222224 D25 2222222222222224
D26 2222222222222223 D27 ffffffffffffffff
D28 01000100010000fd D29 0100010001000100
D30 0100010001000100 D31 0100010001000100
SCR 60000010

回溯:
#00件0001c574 /system/lib/libc.so(epoll_wait + 12)
#01件00015041 /system/lib/libutils.so(安卓::活套:: pollInner(INT)+92)
#02件00015261 /system/lib/libutils.so(安卓::活套:: pollOnce(INT,INT *,为int *,**无效)+ 92)
#03件0006bd21 /system/lib/libandroid_runtime.so(安卓:: NativeMessageQueue :: pollOnce(_JNIEnv *,INT)+22)
#04件0001eb0c /system/lib/libdvm.so(dvmPlatformInvoke + 112)
#05件0004f457 /system/lib/libdvm.so(dvmCallJNIMethod(无符号整型常量*,JValue *,方法常量*,螺纹*)+ 398)
#06件00027fa0 /system/lib/libdvm.so
#07件0002c9d0 /system/lib/libdvm.so(dvmInter preT(螺纹*,方法常量*,JValue *)+ 184)
#08件0006176b /system/lib/libdvm.so(dvmInvokeMethod(对象*,方法常量*,ArrayObject的*,ArrayObject的*,ClassObject *,布尔)+350)
#09件0006944b /system/lib/libdvm.so
#10件00027fa0 /system/lib/libdvm.so
#11件0002c9d0 /system/lib/libdvm.so(dvmInter preT(螺纹*,方法常量*,JValue *)+ 184)
#12件000614ad /system/lib/libdvm.so(dvmCallMethodV(螺纹*,方法常量*,*对象,布尔,JValue *,性病:: __ va_list的)292)
#13件0004b03b /system/lib/libdvm.so
#14件0004f5e7 /system/lib/libandroid_runtime.so
#15件00050277 /system/lib/libandroid_runtime.so(安卓:: AndroidRuntime ::开始(字符常量*,字符常量*)+ 378)
#16件0000105b /系统/斌/ app_process
#17件0000dd03 /system/lib/libc.so(__libc_init + 50)
#18件00000d7c /系统/斌/ app_process

围绕PC code:
401a1554 e1a0700c e3700a01 912fff1e e2600000
401a1564 ea007f30 e1a0c007 e3a070fc ef000000
401a1574 e1a0700c e3700a01 912fff1e e2600000
401a1584 ea007f28 e1a0c007 e3a07f4f ef000000
401a1594 e1a0700c e3700a01 912fff1e e2600000
401a15a4 ea007f20 e1a0c007 e59f7014 ef000000
401a15b4 e1a0700c e3700a01 912fff1e e2600000
401a15c4 ea007f18 0000013d​​ e1a0c007 e59f7014
401a15d4 ef000000 e1a0700c e3700a01 912fff1e
401a15e4 e2600000 ea007f0f 0000013e e1a0c007
401a15f4 e3a070a8 ef000000 e1a0700c e3700a01
401a1604 912fff1e e2600000 ea007f06 e1a0c007
401a1614 e3a07f59 ef000000 e1a0700c e3700a01
401a1624 912fff1e e2600000 ea007efe e1a0c007
401a1634 e59f7014 ef000000 e1a0700c e3700a01
401a1644 912fff1e e2600000 ea007ef6 000f0005

各地LR code:
40115024 0848f104 46402500 f7fdaf08 2210fd8e
40115034 46394633 6b2065e5 0614f104 eeaaf7f7
40115044 46304681 feb6f7f8 da1245a9 ece6f7f7
40115054 2f046807 f04fd102 e05637ff f06f4962
40115064 4a620703 20056803 447a4479 ec52f7f7
40115074 d048e04b a178f8df b178f8df 44fa4b5e
40115084 447b44fb 01289305 583b1839 68e0688a
40115094 d10c4282 d50307d9 f7ff4620 e02efdf1
401150a4 20054a56 447a4659 ec34f7f7 4611e027
401150b4 0034f104 92049303 ff0df7ff 99042800
401150c4 db169b03 0101f003 bf48075a 0102f041
401150d4 bf48071a 0104f041 6ba306db f041bf48
401150e4 22140108 3300fb02 1d1a4620 ff5bf7ff
401150f4 9100e005 99052005 f7f74652 3501ec0c
40115104 dbc0454d f06fe7a7 f04f0702 f06f32ff
40115114 e9c44300 f1042318 e02f0918 f7fc2001
 

我的下一个步骤,有什么建​​议?我有自己的日志文件,但它没有像颗粒,足以跟踪了这一点。

解决方案
  

搜索才发现这种类型的崩溃在Android的错误,NDK使用或马车第三方库的情况下

第四种方案是越野车的ROM,ROM中的那些无论是股票的ROM从制造商或者ROM器官功能障碍综合征(如CyanogenMod的)。一次在一个蓝色的月亮种种类似这样的崩溃是最有可能来自ROM的问题,否则你会碰到他们更频繁。

  

任何建议,我的下一个步骤是什么?

有关只有几个用户的,我不一定会担心。

否则,建立指纹会给你你正在使用的环境有所了解。在这种情况下,三星/ m0xx 似乎是三星GT-I9300,他们的银河S3变种之一。如果你能得到你的手在其中的一个 - 无论是通过直接购买,一些在线测试服务,或借用一个朋友 - 你可以看到,如果你能重现崩溃和缩小,其中在C崩溃的$ C $是从哪里来的。如果你能做到这一点,也许你可以想出一些解决方法,要么是罚款,所有的设备,或者至少让你过去的崩溃就这一个。

I have an app which is entirely written in Java - no native code whatsoever - and I've twice had a crash report on the Developer Console "Native crash in unknown unknown". I have no idea where to start locating the source of the problem. Searching has only revealed this type of crash in the case of Android bugs, NDK usage or buggy third party libraries.

For what it's worth, here is one of the logs:

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'samsung/m0xx/m0:4.3/JSS15J/I9300XXUGMJ9:user/release-keys'
Revision: '12'
pid: 2197, tid: 2197, name: .test.app >>> com.test.app <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
r0 fffffffc r1 bef3f3f8 r2 00000010 r3 ffffffff
r4 41619610 r5 00000000 r6 41619624 r7 000000fc
r8 41619658 r9 00000014 sl 418cc238 fp bef3f56c
ip bef3f3f8 sp bef3f3d8 lr 40115045 pc 401a1574 cpsr 280b0010
d0 0000000100110102 d1 0000000044a01000
d2 0000000000000000 d3 0000000000000000
d4 000002d044340000 d5 0000000042a40000
d6 0000000000000000 d7 000000003f800000
d8 0000000000000030 d9 4301000000000000
d10 0000000042400000 d11 0000000000000000
d12 0000000000000000 d13 0000000000000000
d14 0000000000000000 d15 0000000000000000
d16 00002bdd67c11c72 d17 0000000000000000
d18 0000000000000000 d19 2200220022002200
d20 0000000000000003 d21 0000000000000003
d22 0000000000000002 d23 0000000000000003
d24 2222222222222224 d25 2222222222222224
d26 2222222222222223 d27 ffffffffffffffff
d28 01000100010000fd d29 0100010001000100
d30 0100010001000100 d31 0100010001000100
scr 60000010

backtrace:
#00 pc 0001c574 /system/lib/libc.so (epoll_wait+12)
#01 pc 00015041 /system/lib/libutils.so (android::Looper::pollInner(int)+92)
#02 pc 00015261 /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+92)
#03 pc 0006bd21 /system/lib/libandroid_runtime.so (android::NativeMessageQueue::pollOnce(_JNIEnv*, int)+22)
#04 pc 0001eb0c /system/lib/libdvm.so (dvmPlatformInvoke+112)
#05 pc 0004f457 /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+398)
#06 pc 00027fa0 /system/lib/libdvm.so
#07 pc 0002c9d0 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#08 pc 0006176b /system/lib/libdvm.so (dvmInvokeMethod(Object*, Method const*, ArrayObject*, ArrayObject*, ClassObject*, bool)+350)
#09 pc 0006944b /system/lib/libdvm.so
#10 pc 00027fa0 /system/lib/libdvm.so
#11 pc 0002c9d0 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#12 pc 000614ad /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+292)
#13 pc 0004b03b /system/lib/libdvm.so
#14 pc 0004f5e7 /system/lib/libandroid_runtime.so
#15 pc 00050277 /system/lib/libandroid_runtime.so (android::AndroidRuntime::start(char const*, char const*)+378)
#16 pc 0000105b /system/bin/app_process
#17 pc 0000dd03 /system/lib/libc.so (__libc_init+50)
#18 pc 00000d7c /system/bin/app_process

code around pc:
401a1554 e1a0700c e3700a01 912fff1e e2600000 
401a1564 ea007f30 e1a0c007 e3a070fc ef000000 
401a1574 e1a0700c e3700a01 912fff1e e2600000 
401a1584 ea007f28 e1a0c007 e3a07f4f ef000000 
401a1594 e1a0700c e3700a01 912fff1e e2600000 
401a15a4 ea007f20 e1a0c007 e59f7014 ef000000 
401a15b4 e1a0700c e3700a01 912fff1e e2600000 
401a15c4 ea007f18 0000013d e1a0c007 e59f7014 
401a15d4 ef000000 e1a0700c e3700a01 912fff1e 
401a15e4 e2600000 ea007f0f 0000013e e1a0c007 
401a15f4 e3a070a8 ef000000 e1a0700c e3700a01 
401a1604 912fff1e e2600000 ea007f06 e1a0c007 
401a1614 e3a07f59 ef000000 e1a0700c e3700a01 
401a1624 912fff1e e2600000 ea007efe e1a0c007 
401a1634 e59f7014 ef000000 e1a0700c e3700a01 
401a1644 912fff1e e2600000 ea007ef6 000f0005 

code around lr:
40115024 0848f104 46402500 f7fdaf08 2210fd8e 
40115034 46394633 6b2065e5 0614f104 eeaaf7f7 
40115044 46304681 feb6f7f8 da1245a9 ece6f7f7 
40115054 2f046807 f04fd102 e05637ff f06f4962 
40115064 4a620703 20056803 447a4479 ec52f7f7 
40115074 d048e04b a178f8df b178f8df 44fa4b5e 
40115084 447b44fb 01289305 583b1839 68e0688a 
40115094 d10c4282 d50307d9 f7ff4620 e02efdf1 
401150a4 20054a56 447a4659 ec34f7f7 4611e027 
401150b4 0034f104 92049303 ff0df7ff 99042800 
401150c4 db169b03 0101f003 bf48075a 0102f041 
401150d4 bf48071a 0104f041 6ba306db f041bf48 
401150e4 22140108 3300fb02 1d1a4620 ff5bf7ff 
401150f4 9100e005 99052005 f7f74652 3501ec0c 
40115104 dbc0454d f06fe7a7 f04f0702 f06f32ff 
40115114 e9c44300 f1042318 e02f0918 f7fc2001 

Any suggestions for my next steps? I have my own logfile but it's nothing like granular enough to have tracked this.

解决方案

Searching has only revealed this type of crash in the case of Android bugs, NDK usage or buggy third party libraries

The fourth scenario is buggy ROMs, whether those ROMs are stock ROMs from a manufacturer or are ROM mods (e.g., CyanogenMod). Once-in-a-blue-moon sorts of crashes like this are most likely to come from ROM issues, as otherwise you would run into them more often.

Any suggestions for my next steps?

For only a couple of users, I wouldn't necessarily worry.

Otherwise, the Build fingerprint will give you some idea of the environment you are working with. In this case, samsung/m0xx would appear to be the Samsung GT-I9300, one of their "Galaxy S3" variants. If you can get your hands on one of those -- whether via outright purchase, some online testing service, or borrowing from a friend -- you could see if you can reproduce the crash and narrow down where in your code the crash is coming from. If you can do that, perhaps you can come up with some workaround that either is fine for all devices, or at least gets you past the crash on this one.

这篇关于在未知的未知本地崩溃的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆