Android

Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1) - PhoneGap

Фатальный сигнал 11 (SIGSEGV) на 0x00000000 (код = 1) - PhoneGap

Теперь я разрабатываю приложения для Android с PhoneGap. В последнее время, когда я пытаюсь переключаться между HTML-страницами, приложение закрывается, и в LogCat появляется следующая ошибка:

12-24 15:43:39.237: A/libc(23631): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 23631 (.example.app)

Я немного поискал в Google информацию об этой ошибке, и я понимаю, что это связано с памятью устройства. Я нашел несколько решений, но не настолько, чтобы понять, как я их реализую в PhoneGap.

Кто-нибудь здесь сталкивался с этой ошибкой раньше? Что я могу сделать, чтобы решить проблему?

Спасибо вам :)

Переведено автоматически
Ответ 1

Если вы написали (или используете) плагин, который, в свою очередь, использует собственный код C / C ++ через NDK, это может указывать на ошибку в этом собственном коде.

В противном случае это ошибка в прошивке устройства или эмулятора, на котором вы тестируете.

Если вы можете воспроизвести это в эмуляторе, на устройстве Nexus с оригинальным ПЗУ или на множестве устройств разных производителей, вероятно, это ошибка в самом Android. В этом случае, пожалуйста, создайте пример проекта, который может воспроизвести ошибку, и отправьте его вместе со всей трассировкой стека в http://b.android.com, средство отслеживания проблем с ОС Android.

Если вы сталкиваетесь с этим только на одном устройстве или на одном ПЗУ сторонних производителей, вероятно, это более конкретная ошибка - лучше всего обратиться к производителю устройства или издателю ПЗУ с вашими симптомами.

Ответ 2

Я получал аналогичную ошибку на xhdpi Nexus 7, но на моем старом телефоне все работало нормально. Моя проблема возникла при обновлении большого GridView с множеством маленьких кнопок.

A/libc(7410): Fatal signal 11 (SIGSEGV) at 0xbe8a8000 (code=1), thread 7410

Я не думаю, что это ваша проблема, потому что ваш компьютер был 0, а мой - 0xbe8a8000, но это легко попробовать, и это устранило мою проблему, поэтому я собираюсь опубликовать это на случай, если кто-то еще придет сюда в поисках решения SEGV.

Было обсуждение https://github.com/MasDennis/Rajawali/issues/313 похожей проблемы, и кто-то упомянул, что у них была такая же проблема, и отключение аппаратного ускорения устранило ее для них. Это легко попробовать, и это устранило мою проблему.

В приложении Android manifest добавьте:

android:hardwareAccelerated="false"

Надеюсь, это поможет кому-то еще...

Ответ 3

У меня только что была такая же проблема в проекте, над которым я работал. Оказалось, что я загружал много изображений и звуков и вызывал нехватку памяти в приложении при попытке создать экземпляр Activity. Ваша программа использует много ресурсов, требующих много памяти? Можете ли вы вообще уменьшить их размеры?

В моем случае LogCat выделил трассировку стека зеленым цветом (ведение журнала на информационном уровне) непосредственно перед Fatal signal 11 (SIGSEGV) строкой. Трассировка стека произошла, OutOfMemoryException когда приложение загружало ресурсы дляActivity, которые я запускал. Итак, я извлек свои чертежи (в моей программе их было много), отредактировал их, чтобы уменьшить размер файла, и попробовал снова. Ошибка исчезла. Вы можете посмотреть, похож ли ваш вывод LogCat на мой, чтобы узнать, есть ли у вас похожая проблема:

01-15 05:20:40.462: E/dalvikvm-heap(4513): Out of memory on a 3145744-byte allocation.
01-15 05:20:40.462: I/dalvikvm(4513): "main" prio=5 tid=1 RUNNABLE
01-15 05:20:40.462: I/dalvikvm(4513): | group="main" sCount=0 dsCount=0 obj=0x4158b6a0 self=0x41001a60
01-15 05:20:40.462: I/dalvikvm(4513): | sysTid=4513 nice=0 sched=0/0 cgrp=apps handle=1074673744
01-15 05:20:40.462: I/dalvikvm(4513): | schedstat=( 0 0 0 ) utm=41 stm=20 core=1
01-15 05:20:40.462: I/dalvikvm(4513): at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
01-15 05:20:40.462: I/dalvikvm(4513): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:592)
01-15 05:20:40.462: I/dalvikvm(4513): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:445)
01-15 05:20:40.462: I/dalvikvm(4513): at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:781)
01-15 05:20:40.462: I/dalvikvm(4513): at android.content.res.Resources.loadDrawable(Resources.java:1963)
01-15 05:20:40.462: I/dalvikvm(4513): at android.content.res.Resources.getDrawable(Resources.java:672)
01-15 05:20:40.462: I/dalvikvm(4513): at com.kbi.speeddraw.lite.game.drawables.character.ExplodingCharacterDrawable.<init>(ExplodingCharacterDrawable.java:27)
<!-- snip -->
01-15 05:20:40.462: I/dalvikvm(4513): at com.kbi.gameengine.api.gameactivity.GameActivity.onCreate(GameActivity.java:80)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.Activity.performCreate(Activity.java:5048)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2052)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2113)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.ActivityThread.access$700(ActivityThread.java:139)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1224)
01-15 05:20:40.472: I/dalvikvm(4513): at android.os.Handler.dispatchMessage(Handler.java:99)
01-15 05:20:40.472: I/dalvikvm(4513): at android.os.Looper.loop(Looper.java:137)
01-15 05:20:40.472: I/dalvikvm(4513): at android.app.ActivityThread.main(ActivityThread.java:4918)
01-15 05:20:40.472: I/dalvikvm(4513): at java.lang.reflect.Method.invokeNative(Native Method)
01-15 05:20:40.472: I/dalvikvm(4513): at java.lang.reflect.Method.invoke(Method.java:511)
01-15 05:20:40.472: I/dalvikvm(4513): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1004)
01-15 05:20:40.472: I/dalvikvm(4513): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:771)
01-15 05:20:40.472: I/dalvikvm(4513): at dalvik.system.NativeStart.main(Native Method)
01-15 05:20:40.472: A/libc(4513): Fatal signal 11 (SIGSEGV) at 0x00000be0 (code=1), thread 4513 (.speeddraw.lite)
01-15 05:20:40.472: A/libc(4513): Fatal signal 11 (SIGSEGV) at 0x00180500 (code=1), thread 4527 (.speeddraw.lite)
Ответ 4

Следующий пост в Google Plus исправил мою проблему:

В основном проблема связана с оптическими границами в файлах 9 исправлений. В моем случае я использовал более новые 9 исправлений, скопированные из темы Holo. Эти новые исправления недействительны в старых версиях Android, как описано в ссылке

java android