Android致命信号11(SIGSEGV),art :: gc上的代码1 :: Heap :: GetObjectsAllocated()

时间:2015-09-16 15:15:24

标签: android debugging android-ndk

任何人都可以帮助理解这种痕迹吗?

09-16 17:18:32.684  25180-25192/? W/art﹕ Suspending all threads took: 30.520ms
09-16 17:18:32.686  25180-25192/? A/libc﹕ Fatal signal 11 (SIGSEGV), code 1, fault addr 0x550004 in tid 25192 (JDWP)
09-16 17:18:32.788      185-185/? I/DEBUG﹕ *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
09-16 17:18:32.788      185-185/? I/DEBUG﹕ Build fingerprint: 'google/hammerhead/hammerhead:5.1.1/LMY48M/2167285:user/release-keys'
09-16 17:18:32.788      185-185/? I/DEBUG﹕ Revision: '11'
09-16 17:18:32.788      185-185/? I/DEBUG﹕ ABI: 'arm'
09-16 17:18:32.788      185-185/? I/DEBUG﹕ pid: 25180, tid: 25192, name: JDWP  >>> com.example.app <<<
09-16 17:18:32.788      185-185/? I/DEBUG﹕ signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x550004
09-16 17:18:32.800      185-185/? I/DEBUG﹕ r0 b4827800  r1 00000000  r2 4a5d70bd  r3 00550000
09-16 17:18:32.801      185-185/? I/DEBUG﹕ r4 b483b39c  r5 00000002  r6 b483b3a0  r7 b3e721b0
09-16 17:18:32.803      185-185/? I/DEBUG﹕ r8 b4889600  r9 01acd6d0  sl 02187db3  fp 00000000
09-16 17:18:32.804      185-185/? I/DEBUG﹕ ip 00000045  sp b3e72198  lr b464ce7f  pc b462cbfe  cpsr 20070030
09-16 17:18:32.806      185-185/? I/DEBUG﹕ backtrace:
09-16 17:18:32.807      185-185/? I/DEBUG﹕ #00 pc 00137bfe  /system/lib/libart.so (art::gc::Heap::GetObjectsAllocated() const+25)
09-16 17:18:32.809      185-185/? I/DEBUG﹕ #01 pc 000f0871  /system/lib/libart.so (art::Dbg::DdmSendHeapInfo(art::Dbg::HpifWhen)+912)
09-16 17:18:32.810      185-185/? I/DEBUG﹕ #02 pc 000f0c37  /system/lib/libart.so (art::Dbg::DdmHandleHpifChunk(art::Dbg::HpifWhen)+114)
09-16 17:18:32.812      185-185/? I/DEBUG﹕ #03 pc 0001a5e9  /data/dalvik-cache/arm/system@framework@boot.oat
09-16 17:18:33.226      185-185/? I/DEBUG﹕ Tombstone written to: /data/tombstones/tombstone_03
09-16 17:18:33.226      754-822/? I/BootReceiver﹕ Copying /data/tombstones/tombstone_03 to DropBox (SYSTEM_TOMBSTONE)
09-16 17:18:33.230      754-822/? W/DropBoxManagerService﹕ Dropping: SYSTEM_TOMBSTONE (10 > 0 bytes)
09-16 17:18:33.243    754-25262/? W/DropBoxManagerService﹕ Dropping: data_app_native_crash (1065 > 0 bytes)
09-16 17:18:33.255      199-199/? I/Zygote﹕ Process 25180 exited due to signal (11)
09-16 17:18:33.265      754-907/? I/ActivityManager﹕ Process com.example.app (pid 25180) has died
09-16 17:18:33.265      754-907/? W/ActivityManager﹕ Scheduling restart of crashed service com.example.app/.service.Service in 4000ms

是否有可能获得更详细的堆栈跟踪,以了解问题?

我试图通过它来获取它
adb pull /data/tombstones/tombstone_03 tomb.txt

命令,但墓碑已被删除。

2 个答案:

答案 0 :(得分:0)

JDWP(Java Debug Wire Protocol)似乎是问题的原因。在我的情况下,如果adb断开连接,应用程序不会崩溃。

答案 1 :(得分:-2)

这是分段错误的Unix代码。在Android上,这通常是由于尝试使用尚未实例化的对象引起的。因此,在代码中查找可能使用null实例的位置。