it-swarm.com.de

Schwerwiegendes Signal 11 (SIGSEGV) bei 0x00000000 (Code = 1) - PhoneGap

Ich entwickle Android-Apps jetzt mit PhoneGap . In letzter Zeit, wenn ich versuche, zwischen HTML-Seiten zu wechseln, wird die Anwendung geschlossen und im LogCat der folgende Fehler angezeigt:

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

Ich habe bei Google ein wenig nach diesem Fehler gesucht und verstehe, dass er mit dem Speicher des Geräts zusammenhängt. Ich habe einige Lösungen gefunden, aber nicht so sehr, dass mir klar wurde, wie ich sie in PhoneGap implementiere.

Ist hier jemand schon einmal auf diesen Fehler gestoßen? Was kann ich tun, um das Problem zu lösen?

Vielen Dank :)

47
Yehuda

Wenn Sie ein Plugin geschrieben haben (oder verwenden), das nativen C/C++ - Code über das NDK verwendet, kann dies auf einen Fehler in diesem systemeigenen Code hindeuten.

Andernfalls liegt ein Fehler in der Firmware des Geräts oder Emulators vor, auf dem Sie testen.

Wenn Sie dies in einem Emulator, auf einem Nexus-Gerät mit dem Original-ROM oder auf einer Vielzahl von Geräten verschiedener Hersteller reproduzieren können, ist dies wahrscheinlich ein Fehler in Android. Erstellen Sie in diesem Fall ein Beispielprojekt, das den Fehler reproduzieren kann, und senden Sie es zusammen mit der Stack-Ablaufverfolgung gesamt an http://b.Android.com , den Android OS-Issue-Tracker.

Wenn Sie dies nur auf einem Gerät oder einem ROM eines Drittanbieters feststellen, handelt es sich wahrscheinlich um einen spezifischeren Fehler. Am besten wenden Sie sich mit Ihren Symptomen an den Hersteller des Geräts oder den ROM - Publisher.

44
CommonsWare

Beim xhdpi Nexus 7 wurde ein ähnlicher Fehler angezeigt, aber bei meinem alten Telefon funktionierte alles einwandfrei. Mein Problem trat beim Aktualisieren einer großen GridView mit vielen kleinen Schaltflächen auf.

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

Ich glaube nicht, dass dies Ihr Problem ist, weil Ihr PC 0 war und mein Computer um 0xbe8a8000 war, aber es ist einfach zu versuchen und es hat mein Problem behoben. Ich werde es dann posten, falls jemand anderes eine SEGV-Lösung sucht.
Es gab eine Diskussion auf https://github.com/MasDennis/Rajawali/issues/313 über ein ähnliches Problem, und jemand erwähnte, dass sie das gleiche Problem hatten. Es ist einfach zu versuchen und es hat mein Problem behoben.
Fügen Sie in der Android-Manifestanwendung Folgendes hinzu:

Android:hardwareAccelerated="false"

Hoffe das hilft jemand anderem ...

16
steven smith

Ich hatte gerade das gleiche Problem bei einem Projekt, an dem ich arbeitete. Es stellte sich heraus, dass ich viele Bilder und Sounds geladen habe und die App beim Versuch, eine Aktivität zu instanziieren, nicht mehr genügend Speicherplatz zur Verfügung stellte. Verwendet Ihr Programm viele speicherintensive Assets? Können Sie ihre Größe überhaupt reduzieren?

In meinem Fall hatte das LogCat unmittelbar vor der Fatal signal 11 (SIGSEGV)-Zeile ein Stack-Trace in grün (Protokollierung auf INFO-Ebene). Das Stack-Trace war eine OutOfMemoryException, während die App Assets für eine Activity lud, die ich startete. Also zog ich meine Drawables hoch (mein Programm hatte viele davon), bearbeitete sie, um ihre Dateigröße zu reduzieren, und versuchte es erneut. Der Fehler ging weg. Sie können sehen, ob Ihre LogCat-Ausgabe wie meine aussieht, um zu sehen, ob Sie ein ähnliches Problem haben:

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)
11
Kevin

Der folgende Google Plus-Beitrag hat mein Problem behoben:

Grundsätzlich hängt das Problem mit optischen Grenzen in 9 Patch-Dateien zusammen. In meinem Fall verwendete ich neuere 9Patches, die aus dem Holo-Theme kopiert wurden. Diese neuen Patches sind in älteren Android-Versionen ungültig, wie im Link erläutert.

4
unify

Bei Problemen mit OutofMemory in meinem Fall habe ich diesen Fehler auf Samsung S3 erhalten und war für das Verwalten einer Menge Bilder beim Starten verantwortlich. Ich habe viele Antworten ohne Lösung geguckt, weil ich überhaupt keinen EditText oder keine Eingabe hatte (eigentlich weiß ich nicht, warum der Fehler die spannbare String-Zero-Länge zeigt ..... und nicht eine andere Sache wie OutOfMemory usw.), dann merke ich, dass die Bilder, die nach Auflösung geordnet wurden, in den falschen Ordnern und überdimensioniert waren, und der Heap in den Himmel ……. Viel Glück

4
Ciclids

Stellen Sie sicher, dass sich alle Ressourcenimages im Assets-Verzeichnis befinden. Ich hatte dieses Problem und es stellt sich heraus, dass eines meiner Bilder fehlt. Sobald ich das Image wieder im Assets-Verzeichnis abgelegt habe, ist alles in Ordnung.

3
Emmy

verwende das hier... options.headers = {"Verbindung": "Schließen"};

1
mahi

Folgendes hat sich für mich bewährt, um den Fehler im Webview zu beseitigen:

webView.freeMemory();

oder

webView.clearCache(true);

Die zweite Option verlangsamt Ihre App.

0
user3727574