我只是在Play商店中更新我的应用程序。在最初的24小时内,没有崩溃错误报告。但是,在那之后,报告了一个独特的错误。此错误会导致App力关闭。
以下是Google Play开发者控制台的堆栈跟踪:
pid: 5161, tid: 5406, name: Thread-45807 >>> milandro.blogs.uny.ac.id.historoid <<< signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad Abort message: 'invalid address or address of corrupt block 0x61e4dc98 passed to dlfree' r0 00000000 r1 40134fea r2 deadbaad r3 40138b5e r4 61e4dc98 r5 40143190 r6 400f1000 r7 61e4dca0 r8 00000000 r9 00000020 sl 00000002 fp 67f4eea9 ip 00000001 sp 644979c0 lr 40106833 pc 40106834 cpsr 600f0030 d0 2064696c61766e69 d1 2073736572646461 d2 657264646120726f d3 6f6320666f207373 d4 e42be0da81996cde d5 e316665881decb2c d6 554268d4f956bf32 d7 a2d34a7f1ce294fc d8 0000000000000000 d9 0000000000000000 d10 0000000000000000 d11 0000000000000000 d12 0000000000000000 d13 0000000000000000 d14 0000000000000000 d15 0000000000000000 d16 0000000000000000 d17 0000000000000000 d18 48ee5947bb7be20c d19 3ea720d5ec195d37 d20 63203ea720d5ec19 d21 2f4bd3cc2303919d d22 f0ffb8df8fe3a1d4 d23 172b0884ca7b0205 d24 3ce47e5b39e23ec1 d25 bf56c087e80f1e27 d26 3fe62e42fefa39ef d27 bfdffffffd0c5e81 d28 39da3fc9ef8d6b7e d29 3ef99342e0ee5069 d30 3fa55553e1053a42 d31 36d0cf8435b916ef scr 60000012 backtrace: #00 pc 00011834 /system/lib/libc.so (dlfree+1191) #01 pc 0000dcd3 /system/lib/libc.so (free+10) #02 pc 00083983 /system/lib/libcrypto.so (CRYPTO_free+34) #03 pc 0002f623 /system/lib/libssl.so (ssl_parse_serverhello_tlsext+738) #04 pc 000181b1 /system/lib/libssl.so (ssl3_get_server_hello+1008) #05 pc 000175af /system/lib/libssl.so (ssl3_connect+566) #06 pc 00027ecb /system/lib/libssl.so (SSL_do_handshake+50) #07 pc 0000aedd /system/lib/libjavacrypto.so #08 pc 0002038c /system/lib/libdvm.so (dvmPlatformInvoke+112) #09 pc 00051007 /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+398) #10 pc 00029820 /system/lib/libdvm.so #11 pc 00030ca8 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76) #12 pc 0002e340 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184) #13 pc 000634e5 /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+336) #14 pc 00063509 /system/lib/libdvm.so (dvmCallMethod(Thread*, Method const*, Object*, JValue*, ...)+20) #15 pc 000581bb /system/lib/libdvm.so #16 pc 0000d238 /system/lib/libc.so (__thread_entry+72) #17 pc 0000d3d0 /system/lib/libc.so (pthread_create+240) code around pc: 40106814 6a014478 62021e4a f7fdb95a e008fd39 40106824 4621482a 44784a2a f001447a 4a13f9b3 40106834 49286014 f8d14479 079a31bc f501d51c 40106844 e8bd70e0 f02c40f8 4823b801 f7fd4478 40106854 4822fd0d e7fa4478 42b7688f ae10f43f 40106864 481fe611 e7f24478 4478481e 6888e7ef 40106874 f43f4298 e606aed4 bf00bdf8 deadbaad 40106884 0003cdee 0003cde0 0003cd48 000326cc 40106894 0003ccbc 0003ccaa 0003cc32 0003cc10 401068a4 0003cbb4 0003cb9e 0003cb38 0003cb20 401068b4 0003cb0e 0003cab6 0003ca90 0003ca06 401068c4 0003c9b0 0003c996 0003c978 0002e7bc 401068d4 0003232e 0003c954 0003230a 00032302 401068e4 000322f2 000322ec 460db538 b1704601 401068f4 0200ea45 f405fb00 04030c10 4620b143 40106904 ee90f028 bf1842a8 34fff04f 4604e000 code around lr: 40106810 482e61a3 6a014478 62021e4a f7fdb95a 40106820 e008fd39 4621482a 44784a2a f001447a 40106830 4a13f9b3 49286014 f8d14479 079a31bc 40106840 f501d51c e8bd70e0 f02c40f8 4823b801 40106850 f7fd4478 4822fd0d e7fa4478 42b7688f 40106860 ae10f43f 481fe611 e7f24478 4478481e 40106870 6888e7ef f43f4298 e606aed4 bf00bdf8 40106880 deadbaad 0003cdee 0003cde0 0003cd48 40106890 000326cc 0003ccbc 0003ccaa 0003cc32 401068a0 0003cc10 0003cbb4 0003cb9e 0003cb38 401068b0 0003cb20 0003cb0e 0003cab6 0003ca90 401068c0 0003ca06 0003c9b0 0003c996 0003c978 401068d0 0002e7bc 0003232e 0003c954 0003230a 401068e0 00032302 000322f2 000322ec 460db538 401068f0 b1704601 0200ea45 f405fb00 04030c10 40106900 4620b143 ee90f028 bf1842a8 34fff04f
是否有解决此问题的解决方案?
谢谢。
答案 0 :(得分:0)
请参阅:
https://code.google.com/p/android/issues/detail?id=74964
有一种可能的解决方案:
我们似乎已经大大减少了,如果不是通过在startHandshake()调用周围添加一个锁来消除这种崩溃(我们从未见过它)。代码很简单......
synchronized(sHandshakeLock) {
sslSock.startHandshake();
}