Analysis of Android Studio Debug Problem

  1. Fetch the log info
  2. Analyze the crash info
  3. Search the Google/Stack Overflow
  4. Summarize the process

Fetch the log info

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
--------- beginning of crash
04-10 10:03:48.492 7348-7355/me.ipcreator.ui.debug A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 7355 (JDWP)
[ 04-10 10:03:48.493 1282: 1282 W/ ]
debuggerd: handling request: pid=7348 uid=10100 gid=10100 tid=7355
04-10 10:03:48.551 7366-7366/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
04-10 10:03:48.551 7366-7366/? A/DEBUG: Build fingerprint: 'Android/sdk_google_phone_x86/generic_x86:7.1.1/NYC/3756122:userdebug/test-keys'
04-10 10:03:48.551 7366-7366/? A/DEBUG: Revision: '0'
04-10 10:03:48.551 7366-7366/? A/DEBUG: ABI: 'x86'
04-10 10:03:48.551 7366-7366/? A/DEBUG: pid: 7348, tid: 7355, name: JDWP >>> me.ipcreator.ui.debug <<<
04-10 10:03:48.551 7366-7366/? A/DEBUG: signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
04-10 10:03:48.551 7366-7366/? A/DEBUG: Abort message: 'art/runtime/jdwp/jdwp_event.cc:661] Check failed: Thread::Current() != GetDebugThread() (Thread::Current()=0xac58f400, GetDebugThread()=0xac58f400) Expected event thread'
04-10 10:03:48.551 7366-7366/? A/DEBUG: eax 00000000 ebx 00001cb4 ecx 00001cbb edx 00000006
04-10 10:03:48.551 7366-7366/? A/DEBUG: esi b12d0978 edi b12d0920
04-10 10:03:48.551 7366-7366/? A/DEBUG: xcs 00000073 xds 0000007b xes 0000007b xfs 0000003b xss 0000007b
04-10 10:03:48.551 7366-7366/? A/DEBUG: eip b6366424 ebp b12ceac8 esp b12cea6c flags 00000296
04-10 10:03:48.555 7366-7366/? A/DEBUG: backtrace:
04-10 10:03:48.555 7366-7366/? A/DEBUG: #00 pc ffffe424 [vdso:b6366000] (__kernel_vsyscall+16)
04-10 10:03:48.555 7366-7366/? A/DEBUG: #01 pc 0007a03c /system/lib/libc.so (tgkill+28)
04-10 10:03:48.555 7366-7366/? A/DEBUG: #02 pc 00075885 /system/lib/libc.so (pthread_kill+85)
04-10 10:03:48.555 7366-7366/? A/DEBUG: #03 pc 0002785a /system/lib/libc.so (raise+42)
04-10 10:03:48.555 7366-7366/? A/DEBUG: #04 pc 0001ee36 /system/lib/libc.so (abort+86)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #05 pc 005183c5 /system/lib/libart.so (_ZN3art7Runtime5AbortEPKc+565)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #06 pc 0011a5b3 /system/lib/libart.so (_ZN3art10LogMessageD1Ev+1747)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #07 pc 0039b74d /system/lib/libart.so (_ZN3art4JDWP9JdwpState24AcquireJdwpTokenForEventEy+733)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #08 pc 0039acf3 /system/lib/libart.so (_ZN3art4JDWP9JdwpState29SendRequestAndPossiblySuspendEPNS0_9ExpandBufENS0_17JdwpSuspendPolicyEy+211)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #09 pc 003a0ec9 /system/lib/libart.so (_ZN3art4JDWP9JdwpState16PostClassPrepareEPNS_6mirror5ClassE+1705)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #10 pc 001c2a85 /system/lib/libart.so (_ZN3art3Dbg16PostClassPrepareEPNS_6mirror5ClassE+53)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #11 pc 001689fc /system/lib/libart.so (_ZN3art11ClassLinker11DefineClassEPNS_6ThreadEPKcjNS_6HandleINS_6mirror11ClassLoaderEEERKNS_7DexFileERKNS9_8ClassDefE+1116)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #12 pc 001683e9 /system/lib/libart.so (_ZN3art11ClassLinker26FindClassInPathClassLoaderERNS_33ScopedObjectAccessAlreadyRunnableEPNS_6ThreadEPKcjNS_6HandleINS_6mirror11ClassLoaderEEEPPNS8_5ClassE+1865)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #13 pc 0016979b /system/lib/libart.so (_ZN3art11ClassLinker9FindClassEPNS_6ThreadEPKcNS_6HandleINS_6mirror11ClassLoaderEEE+1163)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #14 pc 005a7a7a /system/lib/libart.so (_ZN3art8verifier12RegTypeCache12ResolveClassEPKcPNS_6mirror11ClassLoaderE+186)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #15 pc 005a742d /system/lib/libart.so (_ZN3art8verifier12RegTypeCache4FromEPNS_6mirror11ClassLoaderEPKcb+701)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #16 pc 005a70fd /system/lib/libart.so (_ZN3art8verifier12RegTypeCache14FromDescriptorEPNS_6mirror11ClassLoaderEPKcb+77)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #17 pc 005862ed /system/lib/libart.so (_ZN3art8verifier14MethodVerifier26ResolveClassAndCheckAccessEj+173)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #18 pc 005960c4 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier27ResolveMethodAndCheckAccessEjNS0_10MethodTypeE+84)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #19 pc 0059265c /system/lib/libart.so (_ZN3art8verifier14MethodVerifier20VerifyInvocationArgsEPKNS_11InstructionENS0_10MethodTypeEb+76)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #20 pc 00587e02 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier25CodeFlowVerifyInstructionEPj+4914)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #21 pc 00585f96 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier20CodeFlowVerifyMethodEv+358)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #22 pc 00581c9d /system/lib/libart.so (_ZN3art8verifier14MethodVerifier14VerifyCodeFlowEv+973)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #23 pc 0057da56 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier6VerifyEv+854)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #24 pc 0057c742 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier12VerifyMethodEPNS_6ThreadEjPKNS_7DexFileENS_6HandleINS_6mirror8DexCacheEEENS7_INS8_11ClassLoaderEEEPKNS4_8ClassDefEPKNS4_8CodeItemEPNS_9ArtMethodEjPNS_17CompilerCallbacksEbNS_11LogSeverityEbPNSt3__112basic_stringIcNSO_11char_traitsIcEENSO_9allocatorIcEEEE+226)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #25 pc 0057c1c7 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier13VerifyMethodsILb0EEENS1_11FailureDataEPNS_6ThreadEPNS_11ClassLinkerEPKNS_7DexFileEPKNS8_8ClassDefEPNS_21ClassDataItemIteratorENS_6HandleINS_6mirror8DexCacheEEENSG_INSH_11ClassLoaderEEEPNS_17CompilerCallbacksEbNS_11LogSeverityEbPNSt3__112basic_stringIcNSP_11char_traitsIcEENSP_9allocatorIcEEEE+791)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #26 pc 0057b1f9 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier11VerifyClassEPNS_6ThreadEPKNS_7DexFileENS_6HandleINS_6mirror8DexCacheEEENS7_INS8_11ClassLoaderEEEPKNS4_8ClassDefEPNS_17CompilerCallbacksEbNS_11LogSeverityEPNSt3__112basic_stringIcNSJ_11char_traitsIcEENSJ_9allocatorIcEEEE+921)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #27 pc 0057a4b9 /system/lib/libart.so (_ZN3art8verifier14MethodVerifier11VerifyClassEPNS_6ThreadEPNS_6mirror5ClassEPNS_17CompilerCallbacksEbNS_11LogSeverityEPNSt3__112basic_stringIcNSA_11char_traitsIcEENSA_9allocatorIcEEEE+841)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #28 pc 00174386 /system/lib/libart.so (_ZN3art11ClassLinker11VerifyClassEPNS_6ThreadENS_6HandleINS_6mirror5ClassEEENS_11LogSeverityE+2102)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #29 pc 0017a406 /system/lib/libart.so (_ZN3art11ClassLinker15InitializeClassEPNS_6ThreadENS_6HandleINS_6mirror5ClassEEEbb+326)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #30 pc 00158dde /system/lib/libart.so (_ZN3art11ClassLinker17EnsureInitializedEPNS_6ThreadENS_6HandleINS_6mirror5ClassEEEbb+222)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #31 pc 001b60da /system/lib/libart.so (_ZN3artL17GetFieldValueImplEyyyPNS_4JDWP9ExpandBufEb+1866)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #32 pc 001b667e /system/lib/libart.so (_ZN3art3Dbg19GetStaticFieldValueEyyPNS_4JDWP9ExpandBufE+78)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #33 pc 003a4c5d /system/lib/libart.so (_ZN3art4JDWPL12RT_GetValuesEPNS0_9JdwpStateEPNS0_7RequestEPNS0_9ExpandBufE+141)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #34 pc 003a2ea4 /system/lib/libart.so (_ZN3art4JDWP9JdwpState14ProcessRequestEPNS0_7RequestEPNS0_9ExpandBufEPb+1044)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #35 pc 003ab570 /system/lib/libart.so (_ZN3art4JDWP9JdwpState12HandlePacketEv+192)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #36 pc 00678df3 /system/lib/libart.so (_ZN3art4JDWP12JdwpAdbState15ProcessIncomingEv+1139)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #37 pc 003ab9d1 /system/lib/libart.so (_ZN3art4JDWP9JdwpState3RunEv+593)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #38 pc 003aae50 /system/lib/libart.so (_ZN3art4JDWPL15StartJdwpThreadEPv+48)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #39 pc 00074fe2 /system/lib/libc.so (_ZL15__pthread_startPv+210)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #40 pc 0002029e /system/lib/libc.so (__start_thread+30)
04-10 10:03:48.556 7366-7366/? A/DEBUG: #41 pc 0001e076 /system/lib/libc.so (__bionic_clone+70)
04-10 10:03:48.863 1607-7371/system_process W/ActivityManager: Force finishing activity me.ipcreator.ui.debug/org.ipcreator.ui.MainActivity

Analyze the crash info

04-10 10:03:48.551 7366-7366/? A/DEBUG: Abort message: ‘art/runtime/jdwp/jdwp_event.cc:661] Check failed: Thread::Current() != GetDebugThread() (Thread::Current()=0xac58f400, GetDebugThread()=0xac58f400) Expected event thread’

Search the Google/Stack Overflow

Problem could be related with Android version 7.x, i removed all the breakpoints in nested functions and it worked, tested with Android version 6.0 too, and it is working without problem.

According to google developers team response, it was fixed on 12/1/2016 and will be applied in next release.

In my case i had to disable Instant Run. It seems like Instant Run has all sorts of side effects and this can be one of them.
Note, in Android Studio, the is under File -> Settings -> Build, Execution, Deployment -> Instant Run

Summarize the process

Reference

Android app crashes when launched in debug mode

Issue 227513: art/runtime/jdwp/jdwp_event.cc:661] Check failed: Thread::Current() != GetDebugThread() (Thread::Current()=0x7ffeecc19400, GetDebugThread()=0x7ffeecc19400) Expected event thread