#android #crash #segmentation-fault
#Android #сбой #ошибка сегментации
Вопрос:
Я часто получаю сбой приложения, когда ListView вызывает адаптер для предоставления резервных данных. Устройство представляет собой Sony Experia X10 с Android 1.6. Это всего лишь ошибка Seg, однако я не знаю, как я могу это исправить?? У меня нет никаких собственных компонентов — это чистое java-приложение.
I/DEBUG ( 1955): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 1955): Build fingerprint: 'SEMC/X10_1232-9897/SonyEricssonX10i/es209ra:1.6/R1FA016/1268206111:user/rel-keys'
I/DEBUG ( 1955): pid: 2226, tid: 2486 >>> com.xxx.yyy <<<
I/DEBUG ( 1955): signal 11 (SIGSEGV), fault addr 00000000
I/DEBUG ( 1955): r0 00000007 r1 2c4a14e8 r2 2c4a14e8 r3 00000000
I/DEBUG ( 1955): r4 2c4a14e8 r5 00902f10 r6 00000000 r7 34828cac
I/DEBUG ( 1955): r8 34828da0 r9 2d3dbe48 10 2d3dbe34 fp 00000001
I/DEBUG ( 1955): ip 6fbc30c8 sp 34828c70 lr 6d044889 pc 6d03d806 cpsr 00000030
I/DEBUG ( 1955): #00 pc 0003d806 /system/lib/libdvm.so
I/DEBUG ( 1955): #01 pc 001f3362 /system/lib/libwebcore.so
I/DEBUG ( 1955): #02 pc 00260296 /system/lib/libwebcore.so
I/DEBUG ( 1955): #03 pc 000da460 /system/lib/libwebcore.so
I/DEBUG ( 1955): #04 pc 000ec454 /system/lib/libwebcore.so
I/DEBUG ( 1955): #05 pc 000df0ec /system/lib/libwebcore.so
I/DEBUG ( 1955): #06 pc 00187d60 /system/lib/libwebcore.so
I/DEBUG ( 1955): #07 pc 00187edc /system/lib/libwebcore.so
I/DEBUG ( 1955): #08 pc 00187f08 /system/lib/libwebcore.so
I/DEBUG ( 1955): #09 pc 00258162 /system/lib/libwebcore.so
I/DEBUG ( 1955): #10 pc 0000e474 /system/lib/libdvm.so
I/DEBUG ( 1955): #11 pc 0003e68e /system/lib/libdvm.so
I/DEBUG ( 1955): #12 pc 000131d8 /system/lib/libdvm.so
I/DEBUG ( 1955): #13 pc 00017a84 /system/lib/libdvm.so
I/DEBUG ( 1955): #14 pc 000174cc /system/lib/libdvm.so
I/DEBUG ( 1955): #15 pc 0004f6c8 /system/lib/libdvm.so
I/DEBUG ( 1955): #16 pc 0004f6e6 /system/lib/libdvm.so
I/DEBUG ( 1955): #17 pc 00044d28 /system/lib/libdvm.so
I/DEBUG ( 1955): #18 pc 0000f984 /system/lib/libc.so
I/DEBUG ( 1955): #19 pc 0000f4f8 /system/lib/libc.so
I/DEBUG ( 1955): stack:
I/DEBUG ( 1955): 34828c30 2c99510e /system/framework/core.odex
I/DEBUG ( 1955): 34828c34 2c99510f /system/framework/core.odex
I/DEBUG ( 1955): 34828c38 00902f10 [heap]
I/DEBUG ( 1955): 34828c3c 00000001
I/DEBUG ( 1955): 34828c40 00000007
I/DEBUG ( 1955): 34828c44 2c352fe0 /dev/ashmem/dalvik-LinearAlloc (deleted)
I/DEBUG ( 1955): 34828c48 2c352fe0 /dev/ashmem/dalvik-LinearAlloc (deleted)
I/DEBUG ( 1955): 34828c4c 00902f10 [heap]
I/DEBUG ( 1955): 34828c50 00902f10 [heap]
I/DEBUG ( 1955): 34828c54 00000001
I/DEBUG ( 1955): 34828c58 00000007
I/DEBUG ( 1955): 34828c5c 6d044889 /system/lib/libdvm.so
I/DEBUG ( 1955): 34828c60 2c4a14e8 /dev/ashmem/dalvik-LinearAlloc (deleted)
I/DEBUG ( 1955): 34828c64 00902f10 [heap]
I/DEBUG ( 1955): 34828c68 df002777
I/DEBUG ( 1955): 34828c6c e3a070ad
I/DEBUG ( 1955): #00 34828c70 34828cb8
I/DEBUG ( 1955): 34828c74 70f537a8
I/DEBUG ( 1955): 34828c78 009130e8 [heap]
I/DEBUG ( 1955): 34828c7c 6a3dc5d0 /system/lib/libwebcore.so
I/DEBUG ( 1955): 34828c80 34828cb8
I/DEBUG ( 1955): 34828c84 6d03d7f1 /system/lib/libdvm.so
I/DEBUG ( 1955): 34828c88 6a1f334d /system/lib/libwebcore.so
I/DEBUG ( 1955): 34828c8c 009130e8 [heap]
I/DEBUG ( 1955): 34828c90 00000000
I/DEBUG ( 1955): 34828c94 6a1f3365 /system/lib/libwebcore.so
I/DEBUG ( 1955): #01 34828c98 6a3dc5d0 /system/lib/libwebcore.so
I/DEBUG ( 1955): 34828c9c 34828cac
I/DEBUG ( 1955): 34828ca0 ffe16d7d
I/DEBUG ( 1955): 34828ca4 6a260299 /system/lib/libwebcore.so
I/DEBUG ( 1955): 34828ca8 2c4a14e8 /dev/ashmem/dalvik-LinearAlloc (deleted)
I/DEBUG ( 1955): 34828cac 00000000
Комментарии:
1. Много libwebcore в стеке вызовов… там есть WebView? Выглядит v как этот сбой: mailinglistarchive.com/html/android-developers@googlegroups.com /…
Ответ №1:
Вы столкнулись с ошибкой в прошивке, либо с чем-то специфичным для данной модели устройства, либо, возможно, общим для самого Android.
Невозможно сказать, как обойти это, поскольку вы не предоставили никакого кода или каких-либо указаний на то, где в этом коде происходит сбой. Вам просто нужно будет провести дополнительное тестирование, закомментировав различные фрагменты, чтобы выяснить, что именно вы делаете, что вызывает ошибку прошивки.
Вам следует рассмотреть возможность публикации этого дампа вместе с любой возможной описательной информацией в общедоступном сервисе отслеживания проблем Android, поскольку таким образом вы сможете получить некоторые ответы.
Комментарии:
1. Да, это определенно ошибка в прошивке. После обновления fw этот сбой больше не возникает.