2010-12-20 21 views
1

Ich bin neu bei Android und steckte ein Problem auf.erzwinge das Schließen der Anwendung

Ich möchte wissen, wie erzwungen wird, die Anwendung programmgesteuert zu schließen und es erneut zu starten. Ich versuche dies, weil ich wirklich fest mit OutOfMemmoryError bin ich möchte den Speicher freigeben und starten Sie die App erneut.

Bitte führen Sie mich, wenn ich falsch liege.

Antwort

5

Das Neustarten der App, um OutOfMemoryExceptions zu vermeiden oder zu reparieren, ist eine sehr schlechte Idee. Sie sollten anfangen, an Ihrem Speicherproblem selbst zu arbeiten, anstatt nur seltsame Dinge zu tun, wenn sie auftreten.

Sie sollten die Krankheit heilen, anstatt die Symptome zu behandeln.

2

Ich weiß nicht, ob es möglich ist, manuell zu schließen, aber es ist ziemlich falsch.

Versuchen Sie, Ihren Code zu überprüfen und herauszufinden, wo der OutOfMemoryException ist. Überprüfen Sie auch this question für Hinweise.

+0

ich benutzte t seine Lösung bereits..aber meine Anwendung bezieht sich auf mehrere Bilder und dieser Fehler tritt nur unter bestimmten Bedingungen auf ... – Sat

11

Zum Schließen Anwendung zu zwingen, rufen Sie einfach an:

android.os.Process.killProcess(android.os.Process.myPid()); 

Über OutOfMemoryError - beste Ort, um diese Art von Fehler zu behandeln ist Methode Application.onLowMemory(), wie:

@Override 
public void onLowMemory() 
{ 
    super.onLowMemory(); 
    //do smth like freeing reources, etc. 
} 
+0

onLowMemory() wird nur aufgerufen, wenn das gesamte Telefon in der Ressource niedrig läuft. Dies gilt nicht nur für Ihre App. http://developer.android.com/reference/android/content/ComponentCallbacks.html#onLowMemory() – 66CLSjY

0

für Speicher Satz Attribut out in android manifest android: largeHeap = "true" mit in der Anwendung tag

Verwandte Themen