Hi Fans,
seit Wochen quält mich ein riesiges Problem. Meine App stürzt sporadisch ab mit der Meldung
"[Appname] wurde beendet. Heute bin ich dahinter gekommen, warum es passiert.
Habe mir mal einen Timer eingebaut auf 4 sekunden, wo mir über toastmessageshow der
verfügbare speicher angezeigt wird.
Beim Erststart zeigt er mir 49500 an. Jetzt beende ich die App und starte sie neu.
Jetzt stehen plötzlich nur noch 38200 als verfügbarer Speicher zur Verfügung.
Also App wieder beendet und neu gestartet mit dem Ergebnis 26900.
Das geht bis kein Start mehr möglich ist, bzw die App abschmiert.
Daher meine Frage:
Wieso schmeisst Android die App nicht komplett aus dem Speicher beim beenden??
Habe in der Activity_Pause (userclosed=true section) mehrere Kombis ausprobiert, unter anderem natürlich auch
gestartetete Services zu stoppen und auch mal in der letzten Zeile in dieser Section
den Befehl Activity.RemoveAllViews und auch Activity.Finish
Alles hat nichts geholfen, der Speicher wird nicht freigegeben. Was läuft hier falsch ????
PS: Habe gerade festgestellt, dass ich eine lib benutze, in der auch canvas benutzt wird.
Auch kommuniziert diese über callsubdelayed3 mit der mainactivity. Liegt hier eventuell das
Problem ? Wenn ja, wie gebe ich die verwendeten canvas referenzen wieder frei ?
Nachtrag : Habe das Problem nun sehr unkonventionell gelöst. Einfach als letzten Befehl ExitApplication eintragen, dann schmeisst er alles raus. Denke aber, dass es trotzdem
unsauber ist, aber es geht.
Thx
Holger
seit Wochen quält mich ein riesiges Problem. Meine App stürzt sporadisch ab mit der Meldung
"[Appname] wurde beendet. Heute bin ich dahinter gekommen, warum es passiert.
Habe mir mal einen Timer eingebaut auf 4 sekunden, wo mir über toastmessageshow der
verfügbare speicher angezeigt wird.
Beim Erststart zeigt er mir 49500 an. Jetzt beende ich die App und starte sie neu.
Jetzt stehen plötzlich nur noch 38200 als verfügbarer Speicher zur Verfügung.
Also App wieder beendet und neu gestartet mit dem Ergebnis 26900.
Das geht bis kein Start mehr möglich ist, bzw die App abschmiert.
Daher meine Frage:
Wieso schmeisst Android die App nicht komplett aus dem Speicher beim beenden??
Habe in der Activity_Pause (userclosed=true section) mehrere Kombis ausprobiert, unter anderem natürlich auch
gestartetete Services zu stoppen und auch mal in der letzten Zeile in dieser Section
den Befehl Activity.RemoveAllViews und auch Activity.Finish
Alles hat nichts geholfen, der Speicher wird nicht freigegeben. Was läuft hier falsch ????
PS: Habe gerade festgestellt, dass ich eine lib benutze, in der auch canvas benutzt wird.
Auch kommuniziert diese über callsubdelayed3 mit der mainactivity. Liegt hier eventuell das
Problem ? Wenn ja, wie gebe ich die verwendeten canvas referenzen wieder frei ?
Nachtrag : Habe das Problem nun sehr unkonventionell gelöst. Einfach als letzten Befehl ExitApplication eintragen, dann schmeisst er alles raus. Denke aber, dass es trotzdem
unsauber ist, aber es geht.
Thx
Holger
Last edited: