Android jni层so崩溃定位

首先确认两个目录:

1. libs/armeabi-v7a/libdecoder.so

2.obj/local/armeabi-v7a/libdecoder.so

我们在应用程序中使用的是第一个目录的so文件。但我们遇到崩溃时需要的是第二个目录的so文件来定位.

看看下面的崩溃部分,看上去是不是很晕? 

来! 按下面的方式定位就能找出问题所在:

arm-linux-androideabi-addr2line -C -f -e libdecoder.so 00319bf2

arm-linux-androideabi-addr2line -C -f -e libdecoder.so 0031986d

arm-linux-androideabi-addr2line -C -f -e libdecoder.so 00324b09

 

运行上面的命令会出现如下信息:

RunDecodeServer
/Users/mine/Work/develop/TestDecoder/decodeserver.c:433

 

告诉你源码的位置了,赶快去分析吧!

 

 

I/DEBUG   ( 1462):     r0 0074006f  r1 6307b978  r2 0003a003  r3 00000001
I/DEBUG   ( 1462):     r4 00a41aa4  r5 6307b9f8  r6 6307b978  r7 6307b958
I/DEBUG   ( 1462):     r8 00000001  r9 6307ba7a  sl 00000080  fp 00000000
I/DEBUG   ( 1462):     ip 6307b960  sp 6307b7b8  lr 658a3871  pc 658a3bf2  cpsr 000f0030
I/DEBUG   ( 1462):     d0  0000000000000000  d1  0000000000000000
I/DEBUG   ( 1462):     d2  0000000000000000  d3  0000000000000000
I/DEBUG   ( 1462):     d4  4407000044803000  d5  44070000c4070000
I/DEBUG   ( 1462):     d6  41a0000000000438  d7  4040000000000003
I/DEBUG   ( 1462):     d8  408f400000000000  d9  412378ea00000000
I/DEBUG   ( 1462):     d10 41d7c59eb3c00000  d11 0000000000000000
I/DEBUG   ( 1462):     d12 0000000000000000  d13 0000000000000000
I/DEBUG   ( 1462):     d14 0000000000000000  d15 0000000000000000
I/DEBUG   ( 1462):     d16 000000000000001c  d17 0000000000000000
I/DEBUG   ( 1462):     d18 3ff4000000000000  d19 3ee3e7f972c800a2
I/DEBUG   ( 1462):     d20 0000000000000000  d21 3f5618e60e4920a7
I/DEBUG   ( 1462):     d22 3ef99342e0ee5069  d23 bfc54b4e1580a7ae
I/DEBUG   ( 1462):     d24 bf29fda05b9ddc68  d25 3fc86133156b82f2
I/DEBUG   ( 1462):     d26 3ff0000000000000  d27 bf56bcc61e9572d1
I/DEBUG   ( 1462):     d28 3ff0000000000000  d29 bfc88790a22168c0
I/DEBUG   ( 1462):     d30 0000000000000000  d31 3ff6110940000000
I/DEBUG   ( 1462):     scr 80000013
I/DEBUG   ( 1462): 
I/DEBUG   ( 1462): backtrace:
I/DEBUG   ( 1462):     #00  pc 00319bf2  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):     #01  pc 0031986d  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):     #02  pc 00324b09  /data/data/com.play.play.aw/files/play/common/libdecoder.so

I/DEBUG   ( 1462):     #03  pc 0000d220  /system/lib/libc.so (__thread_entry+72)
I/DEBUG   ( 1462):     #04  pc 0000d3b8  /system/lib/libc.so (pthread_create+240)
I/DEBUG   ( 1462): 
I/DEBUG   ( 1462): stack:
I/DEBUG   ( 1462):          6307b778  6307b7c8  [stack:6313]
I/DEBUG   ( 1462):          6307b77c  65ce6df8  
I/DEBUG   ( 1462):          6307b780  65ce6df8  
I/DEBUG   ( 1462):          6307b784  00000002  
I/DEBUG   ( 1462):          6307b788  00000001  
I/DEBUG   ( 1462):          6307b78c  658ae8e7  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):          6307b790  00000002  
I/DEBUG   ( 1462):          6307b794  a07fb1b7  
I/DEBUG   ( 1462):          6307b798  00000083  
I/DEBUG   ( 1462):          6307b79c  00991090  [heap]
I/DEBUG   ( 1462):          6307b7a0  6307b7c8  [stack:6313]
I/DEBUG   ( 1462):          6307b7a4  6307b958  [stack:6313]
I/DEBUG   ( 1462):          6307b7a8  00000001  
I/DEBUG   ( 1462):          6307b7ac  6307ba7a  [stack:6313]
I/DEBUG   ( 1462):          6307b7b0  00000080  
I/DEBUG   ( 1462):          6307b7b4  658a3ca5  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):     #00  6307b7b8  00000000  
I/DEBUG   ( 1462):          6307b7bc  00000000  
I/DEBUG   ( 1462):          6307b7c0  00000000  
I/DEBUG   ( 1462):          6307b7c4  00000010  
I/DEBUG   ( 1462):          6307b7c8  658a3d65  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):          6307b7cc  00991090  [heap]
I/DEBUG   ( 1462):          6307b7d0  658a3ec9  /data/data/com.play.play.aw/files/play/common/libdecoder.so
I/DEBUG   ( 1462):          6307b7d4  00000000  
I/DEBUG   ( 1462):          6307b7d8  00000000  
I/DEBUG   ( 1462):          6307b7dc  00000001  
I/DEBUG   ( 1462):          6307b7e0  00000000  
I/DEBUG   ( 1462):          6307b7e4  00000000  
I/DEBUG   ( 1462):          6307b7e8  00000000  
I/DEBUG   ( 1462):          6307b7ec  00000000  
I/DEBUG   ( 1462):          6307b7f0  00000000  
I/DEBUG   ( 1462):          6307b7f4  00000000  
I/DEBUG   ( 1462):          ........  ........
I/DEBUG   ( 1462):     #01  6307b960  00000000  
I/DEBUG   ( 1462):          6307b964  00000000  
I/DEBUG   ( 1462):          6307b968  00000000  
I/DEBUG   ( 1462):          6307b96c  00000000  
I/DEBUG   ( 1462):          6307b970  6307bcac  [stack:6313]
I/DEBUG   ( 1462):          6307b974  00000000  
I/DEBUG   ( 1462):          6307b978  00000000  
I/DEBUG   ( 1462):          6307b97c  00000000  
I/DEBUG   ( 1462):          6307b980  00000000  
I/DEBUG   ( 1462):          6307b984  08000000  
I/DEBUG   ( 1462):          6307b988  00000000  
I/DEBUG   ( 1462):          6307b98c  00000000  
I/DEBUG   ( 1462):          6307b990  00000000  
I/DEBUG   ( 1462):          6307b994  00000000  
I/DEBUG   ( 1462):          6307b998  00000000  
I/DEBUG   ( 1462):          6307b99c  00000000  
I/DEBUG   ( 1462):          ........  ........
I/DEBUG   ( 1462):     #02  6307bd50  00000000  
I/DEBUG   ( 1462):          6307bd54  65ce6e1c  
I/DEBUG   ( 1462):          6307bd58  65ce6e00  
I/DEBUG   ( 1462):          6307bd5c  65ce6e94  
I/DEBUG   ( 1462):          6307bd60  65ce6dfc  
I/DEBUG   ( 1462):          6307bd64  5f167ad4  [stack:2607]
I/DEBUG   ( 1462):          6307bd68  23c34600  
I/DEBUG   ( 1462):          6307bd6c  5f167acf  [stack:2607]
I/DEBUG   ( 1462):          6307bd70  0009bc75  
I/DEBUG   ( 1462):          6307bd74  a07fb1b7  
I/DEBUG   ( 1462):          6307bd78  00000000  
I/DEBUG   ( 1462):          6307bd7c  00000000  
I/DEBUG   ( 1462):          6307bd80  00000000  
I/DEBUG   ( 1462):          6307bd84  00000000  
I/DEBUG   ( 1462):          6307bd88  00000000  
I/DEBUG   ( 1462):          6307bd8c  00000000  
I/DEBUG   ( 1462):          ........  ........
I/DEBUG   ( 1462): 
I/DEBUG   ( 1462): memory near r0:
I/DEBUG   ( 1462):     0074004c 0000001b 00020182 13041200 40060001  
I/DEBUG   ( 1462):     0074005c 40040001 00000018 0000001b 00050184  
I/DEBUG   ( 1462):     0074006c 21080108 09f90afb 00000009 00000000  
I/DEBUG   ( 1462):     0074007c 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     0074008c 00000013 00040184 11040006 0005fa0b  
I/DEBUG   ( 1462):     0074009c 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400ac 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400bc 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400cc 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400dc 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400ec 00000013 00040184 11040005 00000213  
I/DEBUG   ( 1462):     007400fc 00000013 00040184 0d040005 0000090a  
I/DEBUG   ( 1462):     0074010c 00000013 00040184 0c040005 0000090a  
I/DEBUG   ( 1462):     0074011c 0000001b 00070184 21080108 0b090809  
I/DEBUG   ( 1462):     0074012c 00000001 00000000 00000013 00040184  
I/DEBUG   ( 1462):     0074013c 01020005 0000090a 00000013 00040184  

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值