Intereting Posts
Как поместить аутентификацию пользователя в мобильное приложение Кодирование видео для поддержки экранов mulitple Как в диалоговом окне Android (полноэкранный, встроенный), как в приложении Календаря Google Как центрировать ImageView на панели инструментов? Android – запуск метода периодически с помощью вызова postDelayed () Есть ли способ сделать Recyclerview Scrollbar большим пальцем фиксированной высоты? Текст макета раздвижной вкладки в верхнем регистре Отладка в Eclipse с помощью реального телефона Android на Ubuntu 10.10 Ошибка записи в медиатеке Android. -19 runTimeException Как установить ProxySettings и ProxyProperties на Android Wi-Fi соединение с помощью Java? Android ICS Launcher 4.0.x не может поддерживать ориентацию экрана Отвечать на клавиатуру при обновлении пользовательского интерфейса Cocos2D OR libgdx для разработки игр для Android Где добавить папку классов в Android Studio? React Native: обновить макет приложения после показа клавиатуры

Fatal signal 11 (SIGSEGV) code = 2 на эмуляторе genymotion, не использующем NDK

В моем приложении не используется NDK. Я тестирую его на эмуляторе GenyMotion Nexus 7, и проблему довольно сложно воспроизвести, и я до сих пор не понял правильный способ ее воспроизведения. Иногда приложение работает отлично в течение длительного времени, а иногда оно просто сработает и автоматически перезапускается после примерно 30 секунд использования.

EDIT: Я не 100%, но это происходит только в эмуляторе genymotion, но не в обычном эмуляторе Android (я продолжу тестирование).

Проблема началась, когда я добавила поддержку большого экрана в ландшафтном режиме (сразу же отобразила два фрагмента в пейзаже и только 1 в портрете (с шириной меньше 720)).

Один из фрагментов ленивых изображений загрузок (из памяти, диска или Интернета).

Я новичок в этом динамическом добавлении и удалении фрагментов, поэтому я уверен, что там что-то может быть.

В любом случае, пожалуйста, помогите мне декодировать этот дамп и выяснить, что вызывает крах (я постараюсь пропустить материал, который, я думаю, не имеет значения):

12-17 16:52:18.344 1255-1255/? A/libc﹕ Fatal signal 11 (SIGSEGV) at 0x97858094 (code=2), thread 1255 (hiexpressgradle) 12-17 16:52:18.448 121-121/? I/DEBUG﹕ *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 12-17 16:52:18.448 121-121/? I/DEBUG﹕ Build fingerprint: 'generic/vbox86tp/vbox86tp:4.3/JLS36G/eng.buildbot.20131127.101043:userdebug/test-keys' 12-17 16:52:18.448 121-121/? I/DEBUG﹕ Revision: '0' 12-17 16:52:18.448 121-121/? I/DEBUG﹕ pid: 1255, tid: 1255, name: hiexpressgradle >>> XXX <<< 12-17 16:52:18.448 121-121/? I/DEBUG﹕ signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 97858094 12-17 16:52:18.608 121-121/? I/DEBUG﹕ eax 00000000 ebx b754a6fc ecx 0000000e edx 978580a2 12-17 16:52:18.608 121-121/? I/DEBUG﹕ esi 0000000c edi 00000001 12-17 16:52:18.608 121-121/? I/DEBUG﹕ xcs 00000073 xds 0000007b xes 0000007b xfs 00000000 xss 0000007b 12-17 16:52:18.608 121-121/? I/DEBUG﹕ eip b754a6fc ebp b94985e8 esp bfe29398 flags 00210292 12-17 16:52:18.608 121-121/? E/Corkscrew﹕ unrecognized DW_CFA_* instruction: 0x10 12-17 16:52:18.608 121-121/? I/DEBUG﹕ backtrace: 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #00 pc 0002f6fc /system/lib/libc.so (memset+140) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #01 pc 00015c6f /system/lib/libhwui.so (android::uirenderer::FontRenderer::cacheBitmap(SkGlyph const&, android::uirenderer::CachedGlyphInfo*, unsigned int*, unsigned int*, bool)+511) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #02 pc 00011aea /system/lib/libhwui.so (android::uirenderer::Font::precache(SkPaint*, char const*, int)+922) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #03 pc 0001414e /system/lib/libhwui.so (android::uirenderer::FontRenderer::precache(SkPaint*, char const*, int, android::uirenderer::Matrix4 const&)+78) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #04 pc 00024aa6 /system/lib/libhwui.so (android::uirenderer::DrawTextOp::onDefer(android::uirenderer::OpenGLRenderer&, int*, void**)+486) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ stack: 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29358 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2935c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29360 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29364 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29368 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2936c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29370 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29374 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29378 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2937c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29380 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29384 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29388 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2938c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29390 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29394 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #00 bfe29398 b5ba5aac /system/lib/libhwui.so 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2939c b5b3ec70 /system/lib/libhwui.so (android::uirenderer::FontRenderer::cacheBitmap(SkGlyph const&, android::uirenderer::CachedGlyphInfo*, unsigned int*, unsigned int*, bool)+512) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #01 bfe293a0 97858094 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293a4 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293a8 0000000e 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293ac bfe2940c [stack] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293b0 b9726ae4 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293b4 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293b8 b934c340 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293bc b6bff210 /system/lib/libskia.so (SkGlyphCache::findImage(SkGlyph const&)+144) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293c0 b972f550 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293c4 b934b588 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293c8 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293cc 00000032 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293d0 bfe29410 [stack] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293d4 bfe2940c [stack] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293d8 97858008 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe293dc b6eb8d48 /system/lib/libskia.so 12-17 16:52:18.608 121-121/? I/DEBUG﹕ ........ ........ 12-17 16:52:18.608 121-121/? I/DEBUG﹕ #02 bfe29430 b94985e8 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29434 b9726ae4 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29438 b966b9c8 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2943c bfe29470 [stack] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29440 bfe29474 [stack] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29444 00000001 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29448 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2944c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29450 3f800000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29454 00000010 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29458 b966b9c8 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2945c b9670dc6 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29460 b94907a4 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29464 b9670e28 [heap] 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe29468 3f800026 12-17 16:52:18.608 121-121/? I/DEBUG﹕ bfe2946c 00000000 12-17 16:52:18.608 121-121/? I/DEBUG﹕ ........ ........ 12-17 16:52:18.608 121-121/? I/DEBUG﹕ memory map around fault addr 97858094: 12-17 16:52:18.608 121-121/? I/DEBUG﹕ 977fa000-97858000 rx /dev/ashmem/dalvik-jit-code-cache (deleted) 12-17 16:52:18.608 121-121/? I/DEBUG﹕ 97858000-97859000 rx 12-17 16:52:18.608 121-121/? I/DEBUG﹕ 97859000-978d9000 rw- 

Спасибо за ваш вход @Simon, после некоторого тестирования я тоже начал получать ошибку на эмуляторе Android. Но на эмуляторе Android это было хорошее старое исключение OutOfMemory. Таким образом, оказывается, что мой привлекательный менеджер (на одном из фрагментов) имел огромную утечку памяти, где он раздувал бы HashMap с помощью drawables. Это только стало проблемой, когда я реализовал макет двух панелей, поскольку DrawableManager всегда оставался в памяти (потому что фрагмент выбора категории, в котором хранится менеджер, никогда не воссоздается) даже при переключении категорий.

EDIT: Несмотря на то, что я решил проблему утечки памяти, мой эмулятор genymotion по-прежнему падает с тем же SIGSEGV, поэтому я думаю, что этот вопрос все еще открыт.

Solutions Collecting From Web of "Fatal signal 11 (SIGSEGV) code = 2 на эмуляторе genymotion, не использующем NDK"

Протестировано Решение его работы:

Упоминайте это разрешение в явном виде:

  <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/CustomTheme" android:allowBackup="true" android:vmSafeMode="true" android:allowClearUserData="true" android:hardwareAccelerated="true" > 

Я тоже столкнулся с этой проблемой, особенно с изображением 4.3 на GenyMotion. Я переключился на образ 4.2.2 и больше не испытывал крушения.

Решение, которое я нашел сам, заключается в изменении некоторого атрибута в файле androidmanifest.xml

 Debuggable = True VM safe mode =True Allow Backup = True Allow Clear user date= True Hardware Accelerated = True 

(Я сделал это, и у меня не было этой проблемы, и мое приложение бежало без проблем, и я тоже использовал Genymotion). В меню приложения извините, я забыл об этом