Ich habe eine ziemlich beliebte App auf Google Play, die vor kurzem durch einige native Abstürze auf libwebviewchromium.so gestürmt wurden. Das fragliche Webview hat nichts Besonderes, nur ein kleines Login-Formular mit deaktiviertem Scrolling.Native Code-Absturz auf libwebviewchromium.so
Natürlich geschieht dies nur auf Android 4.4 und höher (WebViews basieren auf Chromium). Es gibt einen Dump eines Crashs:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'motorola/ghost_repw/ghost:4.4.2/KXA20.16-1.24-1.12/12:user/release-keys'
Revision: 'p300'
pid: 22986, tid: 22986
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
r0 00000000 r1 000059ca r2 00000006 r3 00000000
r4 00000006 r5 0000000b r6 000059ca r7 0000010c
r8 6015d758 r9 57735070 sl 57619830 fp 57734ee0
ip 40121384 sp bef3a088 lr 400e60bd pc 400f5068 cpsr 00060010
d0 4373746e65746e6f d1 697242746e65696c
d2 756f68732e656764 d3 69727265764f646c
d4 616f4c6c72556564 d5 43774128676e6964
d6 4373746e65746e6f d7 697242746e65696c
d8 00000000438e8000 d9 0000000043956b80
d10 0000000000000000 d11 0000000000000000
d12 0000000000000000 d13 0000000000000000
d14 0000000000000000 d15 0000000000000000
d16 2e6c616e7265746e d17 746f67795a2e736f
d18 616d2e74696e4965 d19 746f67795a286e69
d20 616a2e74696e4965 d21 0a293130363a6176
d22 766c616420746109 d23 65747379732e6b69
d24 0000000000000000 d25 0000000000000000
d26 0000000000000000 d27 0000000000000000
d28 0000000000000000 d29 0000000000000000
d30 0000000000000000 d31 0000000000000000
scr 68000013
backtrace:
#00 pc 00022068 /system/lib/libc.so (tgkill+12)
#01 pc 000130b9 /system/lib/libc.so (pthread_kill+48)
#02 pc 000132cd /system/lib/libc.so (raise+10)
#03 pc 00012003 /system/lib/libc.so
#04 pc 0002191c /system/lib/libc.so (abort+4)
#05 pc 001c46b1 /system/lib/libwebviewchromium.so
#06 pc 001c1c4b /system/lib/libwebviewchromium.so
#07 pc 00196ebd /system/lib/libwebviewchromium.so
#08 pc 0018bd73 /system/lib/libwebviewchromium.so
#09 pc 0018bb8d /system/lib/libwebviewchromium.so
#10 pc 0018bc0d /system/lib/libwebviewchromium.so
#11 pc 008e6c29 /system/lib/libwebviewchromium.so
#12 pc 008e6bcd /system/lib/libwebviewchromium.so
#13 pc 001cf1ef /system/lib/libwebviewchromium.so
#14 pc 001cfcf1 /system/lib/libwebviewchromium.so
#15 pc 001cfe4f /system/lib/libwebviewchromium.so
#16 pc 001dfc57 /system/lib/libwebviewchromium.so
#17 pc 0002034c /system/lib/libdvm.so (dvmPlatformInvoke+112)
#18 pc 00050e6b /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+398)
#19 pc 000297e0 /system/lib/libdvm.so
#20 pc 00030ae8 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#21 pc 0002e180 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#22 pc 00063751 /system/lib/libdvm.so (dvmInvokeMethod(Object*, Method const*, ArrayObject*, ArrayObject*, ClassObject*, bool)+392)
#23 pc 0006b713 /system/lib/libdvm.so
#24 pc 000297e0 /system/lib/libdvm.so
#25 pc 00030ae8 /system/lib/libdvm.so (dvmMterpStd(Thread*)+76)
#26 pc 0002e180 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
#27 pc 0006346d /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+336)
#28 pc 0004ca37 /system/lib/libdvm.so
#29 pc 0004d0f7 /system/lib/libandroid_runtime.so
#30 pc 0004de1b /system/lib/libandroid_runtime.so (android::AndroidRuntime::start(char const*, char const*)+354)
#31 pc 0000105b /system/bin/app_process
code around pc:
400f5048 e8bd00f0 e3700a01 912fff1e e2600000
400f5058 ea006e4c e92d50f0 e3a07f43 ef000000
400f5068 e8bd50f0 e3700a01 912fff1e e2600000
400f5078 ea006e44 e92d50f0 e3a070ee ef000000
400f5088 e8bd50f0 e3700a01 912fff1e e2600000
400f5098 ea006e3c f200429a bf0080b9 f040f891
400f50a8 4001e92d f2c02a04 2a1080a5 8093f2c0
400f50b8 f2c02a20 2a408088 ea4fdb7f f1bc1c92
400f50c8 dd6c0f0a 0600e92d 0f40f1bc f500dd4a
400f50d8 f5016e80 ebae7920 ea4f0e09 ea4f5e4e
400f50e8 f50e5e5e ebbc7e20 dd3b1f9e f04fbfc4
400f50f8 ebd9090a dd35199e 0a0eeb01 0a3ff02a
400f5108 1c9eebac bfd245e1 0c09ebac f04f46e1
400f5118 f8910c00 f891f240 f921f280 f921028d
400f5128 f8da428d f1b93000 f9000901 f900028d
400f5138 f10a428d d1ee0a40 0f00f1bc f5bcd02b
code around lr:
400e609c 447b4b13 42b3e010 6a1ed10e 44784811
400e60ac ec80f7fb ea0ef00d 46224631 efd0f00e
400e60bc d00a3001 e00b2400 2b00681b 480ad1eb
400e60cc 44782403 ec6ef7fb f001e002 6804fa23
400e60dc fa20f001 46206005 bf00bd70 0003b306
400e60ec 0003b2fa 0003b2f2 0003b2ce bf7ef7ff
400e60fc 4a3e4b3d e92d447b b08b43f0 4606589c
400e610c 6823460d 930946a1 fa04f001 8000f8d0
400e611c d0482d00 f0104628 280ff88b d8444604
400e612c ffe4f7ff d1064286 4629200f e8d8f00d
400e613c d03c2800 482ee02e f7fb4478 482debb2
400e614c e0154478 d11342b0 482b6a06 f7fb4478
400e615c 4a2aec2a 46332120 a801447a f9eef013
400e616c a8012101 fd08f01a 46061c42 e011d104
400e617c 28006800 e02cd1e6 46294630 f00d4622
400e618c 1c43e914 d11e4607 f9c4f001 29046801
Leider habe ich dieses Problem nicht in der Lage zu replizieren weder auf tatsächlichen Geräte oder Emulatoren, und Benutzer-Feedback ist nicht hilfreich. Keine Ahnung, warum dieser Unfall passiert.
Ich habe gelernt, die NDK-Tools zu verwenden, um die Stack-Trace zu interpretieren, aber ich brauche immer noch eine Version von libwebviewchromium.so mit Debug-Symbolen (und vorzugsweise die exakt gleiche Version, die auf jedem der Benutzergeräte ausgeführt wird).
Also, die Fragen:
Bin ich etwas fehlt?/Ist jemand auf etwas Ähnliches gestoßen?
Angenommen, ich kann die Version von libwebviewchromium.so finden, ist es möglich, Builds mit Debug-Symbolen zu finden, oder muss ich sie von Grund auf kompilieren?
Danke!
Ich bin mir nicht sicher, ob Sie derjenige sind, der sie eingereicht hat, aber [es gibt ein ausstehendes Problem, das wie Ihres aussieht] (https://code.google.com/p/chromium/issues/detail?id=419116) . – CommonsWare
@CommonsWare Das war nicht ich, aber es sieht wirklich nach dem gleichen Problem aus. Behalte es im Auge. Danke vielmals. – MadEqua
Ich habe das gleiche Problem, aber ich kann es mit Affentests reproduzieren ... – mrroboaat