我在libc中的应用程序崩溃了。我不知道原因,如果有人知道这次崩溃,请帮助我。
我在网站上获得了这些信息,但我没有任何共享资源(除了一个.so文件作为库),这并没有解决我的问题。
http://comments.gmane.org/gmane.comp.handhelds.android.ndk/5089
08-09 19:28:21.523: INFO/DEBUG(860): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
08-09 19:28:21.523: INFO/DEBUG(860): Build fingerprint: 'generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys'
08-09 19:28:21.523: INFO/DEBUG(860): pid: 1025, tid: 1041 >>> com.mtrl.android.app.ui <<<
08-09 19:28:21.523: INFO/DEBUG(860): signal 11 (SIGSEGV), fault addr 00000000
08-09 19:28:21.523: INFO/DEBUG(860): r0 00000000 r1 422b024a r2 4310a008 r3 00000000
08-09 19:28:21.523: INFO/DEBUG(860): r4 44f8ac20 r5 00000d49 r6 8085d049 r7 422b024a
08-09 19:28:21.523: INFO/DEBUG(860): r8 475b2d7c r9 430f2ebc 10 430f2ea8 fp 0026a798
08-09 19:28:21.523: INFO/DEBUG(860): ip 808882a4 sp 475b2bd0 lr 8085d053 pc afd1cb9c cpsr 40000030
08-09 19:28:22.333: INFO/DEBUG(860): #00 pc 0001cb9c /system/lib/libc.so
08-09 19:28:22.343: INFO/DEBUG(860): #01 pc 0005d050 /system/lib/libdvm.so
08-09 19:28:22.343: INFO/DEBUG(860): #02 pc 0003ae3c /system/lib/libdvm.so
08-09 19:28:22.353: INFO/DEBUG(860): #03 pc 0005d222 /system/lib/libdvm.so
08-09 19:28:22.393: INFO/DEBUG(860): #04 pc 0003363e /system/lib/libdvm.so
08-09 19:28:22.393: INFO/DEBUG(860): #05 pc 0003438c /system/lib/libdvm.so
08-09 19:28:22.393: INFO/DEBUG(860): #06 pc 0001519a /system/lib/libnativehelper.so
08-09 19:28:22.403: INFO/DEBUG(860): #07 pc 0001525a /system/lib/libnativehelper.so
08-09 19:28:22.403: INFO/DEBUG(860): #08 pc 00013974 /system/lib/libdvm.so
08-09 19:28:22.413: INFO/DEBUG(860): code around pc:
08-09 19:28:22.413: INFO/DEBUG(860): afd1cb7c 2b00d004 3001d001 2000e7f8 46c04770
08-09 19:28:22.413: INFO/DEBUG(860): afd1cb8c 2300b510 3301e004 d1012a00 e0042000
08-09 19:28:22.413: INFO/DEBUG(860): afd1cb9c 5ccc5cc2 d0f642a2 bd101b10 f7ffb510
08-09 19:28:22.413: INFO/DEBUG(860): afd1cbac bd10ffef 5cca2300 330154c2 d1fa2a00
08-09 19:28:22.413: INFO/DEBUG(860): afd1cbbc 46c04770 1c03b570 1c5d781e 78141c0a
08-09 19:28:22.413: INFO/DEBUG(860): code around lr:
08-09 19:28:22.413: INFO/DEBUG(860): 8085d030 1d0abdf0 46c0e7a1 62026281 46c04770
08-09 19:28:22.413: INFO/DEBUG(860): 8085d040 477062c1 46c04770 1c04b510 f7b66980
08-09 19:28:22.413: INFO/DEBUG(860): 8085d050 4243eb78 42404158 bd104020 1c04b570
08-09 19:28:22.413: INFO/DEBUG(860): 8085d060 69801c0d f7b66989 2800eb6c 6ce9d10a
08-09 19:28:22.424: INFO/DEBUG(860): 8085d070 20016ce3 d006428b d0032900 f7ff1c20
08-09 19:28:22.424: INFO/DEBUG(860): stack:
08-09 19:28:22.424: INFO/DEBUG(860): 475b2b90 4000cd01 /dev/ashmem/mspace/dalvik-heap/zygote/0 (deleted)
08-09 19:28:22.424: INFO/DEBUG(860): 475b2b94 80853c21 /system/lib/libdvm.so
08-09 19:28:22.424: INFO/DEBUG(860): 475b2b98 00000000
08-09 19:28:22.424: INFO/DEBUG(860): 475b2b9c 00000009
08-09 19:28:22.424: INFO/DEBUG(860): 475b2ba0 00000009
08-09 19:28:22.424: INFO/DEBUG(860): 475b2ba4 418850e0 /dev/ashmem/dalvik-LinearAlloc (deleted)
08-09 19:28:22.433: INFO/DEBUG(860): 475b2ba8 0026a798 [heap]
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bac 80853ef5 /system/lib/libdvm.so
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bb0 80887fc4 /system/lib/libdvm.so
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bb4 80887fc4 /system/lib/libdvm.so
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bb8 0026a798 [heap]
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bbc 44f80620 /dev/ashmem/mspace/dalvik-heap/2 (deleted)
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bc0 0026a7e4 [heap]
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bc4 8083ec0d /system/lib/libdvm.so
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bc8 df002777
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bcc e3a070ad
08-09 19:28:22.433: INFO/DEBUG(860): #00 475b2bd0 44f8ac20 /dev/ashmem/mspace/dalvik-heap/2 (deleted)
08-09 19:28:22.433: INFO/DEBUG(860): 475b2bd4 8085d053 /system/lib/libdvm.so
08-09 19:28:22.444: INFO/DEBUG(860): #01 475b2bd8 00011a30 [heap]
08-09 19:28:22.444: INFO/DEBUG(860): 475b2bdc 8083ae3f /system/lib/libdvm.so
08-09 19:28:25.943: DEBUG/Zygote(33): Process 1025 terminated by signal (11)
此致 SSuman185
答案 0 :(得分:0)
您可以使用addr2line工具更好地了解错误的位置。你可以这样做:
arm-linux-androideabi-addr2line -e libc.so -C 0005d050
如果你有一部开发电话,strace工具也可以提供一些见解。
答案 1 :(得分:0)
感谢您的支持。 实际上在我的代码中,我正在进行字节到短转换,这会破坏堆。即使分配了足够的内存,我也不知道它是如何被破坏的。在我将此字节移动到解码器中的原生层的短转换后,我现在没有崩溃。
认为它可以帮助你们。所以,结论不仅仅是本机的,即使在java层的内存中也存在任何损坏,我正在使用libc进行转储。即使问题出在Java层,这也误导我专注于原生层。谢谢&amp;问候,
SSuman185