У меня есть действие с ViewPager, которое я использую для пролистывания фрагментов, содержащих «случайные» веб-страницы. Веб-контент не контролируется мной. Я использую FragmentStatePagerAdapter и последнюю библиотеку поддержки. Каждый макет фрагмента содержит веб-представление, которое загружает «случайную» страницу. Пользователь может листать вперед бесконечно.
Когда я включаю аппаратное ускорение, я получаю сбой сегмента (дамп ниже) после нескольких свайпов. При отключенном аппаратном ускорении для активности сбоя не происходит, но, конечно, прокрутка веб-просмотра и переходы пейджера просмотра очень прерывистые. Кроме того, я не могу воспроизводить встроенное видео на таких страницах, как YouTube.
Сбой не происходит на определенных страницах. Также различается количество пролистываний, необходимых для воспроизведения сбоя — иногда это происходит при первом пролистывании, иногда требуется несколько, но оно очень стабильно. Я проверил использование памяти во время работы приложения, и все в порядке (RAM и VRAM) — хорошо в том смысле, что я не думаю, что использую слишком много, и я не получаю никаких предупреждений о низком уровне памяти.
Я столкнулся с проблемой на всех устройствах 3.0+, которые я пробовал до сих пор:
- тошиба регза работает 4.0.3
- Motorola Xoon работает 3.2.1
- телефон galaxy nexus с версией 4.0.4 (между прочим, с телефоном случается реже)
Это известная проблема? Любое обходное решение?
07-02 15:12:30.187: I/DEBUG(111): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
07-02 15:12:30.187: I/DEBUG(111): Build fingerprint: 'TOSHIBA/tostab05/tostab05:4.0.3/IML74K/05.3.0012:user/release-keys'
07-02 15:12:30.187: I/DEBUG(111): pid: 1538, tid: 1538 >>> xxx <<<
07-02 15:12:30.187: I/DEBUG(111): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0000043e
07-02 15:12:30.187: I/DEBUG(111): r0 0000000b r1 02514ba0 r2 befbf378 r3 0000043e
07-02 15:12:30.187: I/DEBUG(111): r4 020a43e8 r5 02070958 r6 00000000 r7 00000006
07-02 15:12:30.187: I/DEBUG(111): r8 00000000 r9 020a2364 10 01d2d108 fp befbf6e4
07-02 15:12:30.187: I/DEBUG(111): ip 409da55c sp befbf330 lr 409c3487 pc 409c349a cpsr 80000030
07-02 15:12:30.187: I/DEBUG(111): d0 4488000044800000 d1 0000000044800000
07-02 15:12:30.187: I/DEBUG(111): d2 4480000044801000 d3 00000000000000af
07-02 15:12:30.187: I/DEBUG(111): d4 3f800000170000e0 d5 4480000044800000
07-02 15:12:30.187: I/DEBUG(111): d6 4488000000000000 d7 4260000000000000
07-02 15:12:30.187: I/DEBUG(111): d8 0000000000000000 d9 0000000300000038
07-02 15:12:30.187: I/DEBUG(111): d10 00000000000002f0 d11 0000000000000000
07-02 15:12:30.187: I/DEBUG(111): d12 0000000000000000 d13 0000000000000000
07-02 15:12:30.187: I/DEBUG(111): d14 0000000000000000 d15 0000000000000000
07-02 15:12:30.187: I/DEBUG(111): d16 0000000000000000 d17 3ff0000000000000
07-02 15:12:30.187: I/DEBUG(111): d18 3fe0000000000000 d19 3fe000000112a880
07-02 15:12:30.187: I/DEBUG(111): d20 3ff0000000000000 d21 8000000000000000
07-02 15:12:30.187: I/DEBUG(111): d22 c000000000000000 d23 0000000000000000
07-02 15:12:30.187: I/DEBUG(111): d24 0000000000000000 d25 3ff0000000000000
07-02 15:12:30.187: I/DEBUG(111): d26 4010000000000000 d27 3ff0000000000000
07-02 15:12:30.187: I/DEBUG(111): d28 0000000000000000 d29 3ff0000000000000
07-02 15:12:30.187: I/DEBUG(111): d30 0000000000000000 d31 3ff0000000000000
07-02 15:12:30.187: I/DEBUG(111): scr 80000013
07-02 15:12:30.335: I/DEBUG(111): #00 pc 0000c49a /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #01 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #02 pc 0000c682 /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #03 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #04 pc 0000c682 /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #05 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #06 pc 0000c682 /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #07 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #08 pc 0000c682 /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #09 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.343: I/DEBUG(111): #10 pc 0000c682 /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): #11 pc 00010d3c /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): #12 pc 00057874 /system/lib/libandroid_runtime.so
07-02 15:12:30.351: I/DEBUG(111): #13 pc 0001ebf0 /system/lib/libdvm.so (dvmPlatformInvoke)
07-02 15:12:30.351: I/DEBUG(111): #14 pc 00058eac /system/lib/libdvm.so (_Z16dvmCallJNIMethodPKjP6JValuePK6MethodP6Thread)
07-02 15:12:30.351: I/DEBUG(111): code around pc:
07-02 15:12:30.351: I/DEBUG(111): 409c3478 f7fe6781 9010ffa3 f0044628 9f0df81f .g......(F......
07-02 15:12:30.351: I/DEBUG(111): 409c3488 ab13aa12 920b3701 9711930e 900f3801 .....7.......8..
07-02 15:12:30.351: I/DEBUG(111): 409c3498 f853e2fe 98107b04 990d463a f7fe67a3 ..S..{..:F...g..
07-02 15:12:30.351: I/DEBUG(111): 409c34a8 2f23fedf 82f4f200 f017e8df 0037002e ..#/..........7.
07-02 15:12:30.351: I/DEBUG(111): 409c34b8 0043003a 00810061 0095008c 00ad00a2 :.C.a...........
07-02 15:12:30.351: I/DEBUG(111): code around lr:
07-02 15:12:30.351: I/DEBUG(111): 409c3464 460db095 920c4604 0800f04f 4646930d ...F.F..O.....FF
07-02 15:12:30.351: I/DEBUG(111): 409c3474 1080f8d0 f7fe6781 9010ffa3 f0044628 .....g......(F..
07-02 15:12:30.351: I/DEBUG(111): 409c3484 9f0df81f ab13aa12 920b3701 9711930e .........7......
07-02 15:12:30.351: I/DEBUG(111): 409c3494 900f3801 f853e2fe 98107b04 990d463a .8....S..{..:F..
07-02 15:12:30.351: I/DEBUG(111): 409c34a4 f7fe67a3 2f23fedf 82f4f200 f017e8df .g....#/........
07-02 15:12:30.351: I/DEBUG(111): stack:
07-02 15:12:30.351: I/DEBUG(111): befbf2f0 00000000
07-02 15:12:30.351: I/DEBUG(111): befbf2f4 befbf30c [stack]
07-02 15:12:30.351: I/DEBUG(111): befbf2f8 0237c55c [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf2fc befbf364 [stack]
07-02 15:12:30.351: I/DEBUG(111): befbf300 409da430 /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): befbf304 01d8c2d8 [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf308 409daa10 /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): befbf30c 409c7d05 /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): befbf310 00000000
07-02 15:12:30.351: I/DEBUG(111): befbf314 020a2364 [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf318 01d2d108 [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf31c 409c23f1 /system/lib/libhwui.so
07-02 15:12:30.351: I/DEBUG(111): befbf320 020a43e8 [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf324 02070958 [heap]
07-02 15:12:30.351: I/DEBUG(111): befbf328 df0027ad
07-02 15:12:30.359: I/DEBUG(111): befbf32c 00000000
07-02 15:12:30.359: I/DEBUG(111): #00 befbf330 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf334 3f800000
07-02 15:12:30.359: I/DEBUG(111): befbf338 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf33c 44800000 /dev/ashmem/dalvik-heap (deleted)
07-02 15:12:30.359: I/DEBUG(111): befbf340 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf344 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf348 3f800000
07-02 15:12:30.359: I/DEBUG(111): befbf34c 02370001 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf350 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf354 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf358 befbf378 [stack]
07-02 15:12:30.359: I/DEBUG(111): befbf35c befbf378 [stack]
07-02 15:12:30.359: I/DEBUG(111): befbf360 befbf6a0 [stack]
07-02 15:12:30.359: I/DEBUG(111): befbf364 00000005
07-02 15:12:30.359: I/DEBUG(111): befbf368 befbf37c [stack]
07-02 15:12:30.359: I/DEBUG(111): befbf36c 0000000b
07-02 15:12:30.359: I/DEBUG(111): befbf370 01d8c2d8 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf374 00000006
07-02 15:12:30.359: I/DEBUG(111): befbf378 44800000 /dev/ashmem/dalvik-heap (deleted)
07-02 15:12:30.359: I/DEBUG(111): befbf37c 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf380 44880000 /dev/ashmem/dalvik-heap (deleted)
07-02 15:12:30.359: I/DEBUG(111): befbf384 020a43e8 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf388 02070958 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf38c 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf390 409c7d05 /system/lib/libhwui.so
07-02 15:12:30.359: I/DEBUG(111): befbf394 00000000
07-02 15:12:30.359: I/DEBUG(111): befbf398 020a2364 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf39c 01d2d108 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf3a0 befbf6e4 [stack]
07-02 15:12:30.359: I/DEBUG(111): befbf3a4 409c7d41 /system/lib/libhwui.so
07-02 15:12:30.359: I/DEBUG(111): #01 befbf3a8 42600000 /dev/ashmem/dalvik-heap (deleted)
07-02 15:12:30.359: I/DEBUG(111): befbf3ac 020a43e8 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf3b0 00000040
07-02 15:12:30.359: I/DEBUG(111): befbf3b4 020a41a0 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf3b8 02070958 [heap]
07-02 15:12:30.359: I/DEBUG(111): befbf3bc 409c3685 /system/lib/libhwui.so