Das Schließen von Apps im Hintergrund verhindern...möglich?

S

satand

Erfahrenes Mitglied
14
hallo,

gibt es eine möglichkeit android zu sagen, dass gewisse apps im hintergrund nicht geschlossen werden sollen? vor allem bei google chrome nervt es mich irrsinnig, wenn android den browser im hintergrund schließt und somit alle tabs neu geladen werden müssen. noch dazu ist es für mich meist nicht nachvollziehbar, warum apps geschlossen werden, da die 2gb ram des nexus 4 längst nicht voll sind?!?

ich habe auto memory manager (https://play.google.com/store/apps/details?id=com.lim.android.automemman&hl=de) getestet, aber entweder die app funktioniert unter cyanogenmod nicht, oder ich mache etwas falsch. zwar kann ich apps auf die whitelist setzen, wodurch diese als letztes geschlossen werden sollten, android ist das aber egal. der browser ist trotzdem immer wieder weg, obwohl noch ~1gb ram frei.

unter iOS heißt die app dazu "backgrounder". gibt es sowas auch bei den androiden? :huh:
 
Nach sowas suche ich auch schon sehr lange, hatte das Problem damals auf meinem S2 auch immer und dachte das würde sich jetzt mit dem nexus 4 und 2gb RAM ändern. Tut es aber nicht, nervt mich auch total.
Aber soweit ich mich eingelesen hatte, ist das nicht zu ändern.

Gesendet von meinem Nexus 4 mit Tapatalk 2
 
da frage ich mich wirklich wofür die 2gb ram da sind, wenn immer nur 1gb genutzt wird.

möglich müsste es doch sein...der auto memory manager gibt vor genau das zu können. funktioniert die app nur mit cyanogenmod nicht?
systemrelevante apps haben scheinbar eine oom-priority von -12, was bedeutet, dass sie nie geschlossen werden (https://lh3.ggpht.com/J6S2XdxTZfemy8aAFd-FWp4NOPcT5yqBCJzptFLMV6U5lgM5C68vdnTCm048rJwe6Ug). je höher die zahl wird, desto eher wird die app geschlossen. abgesehen davon, dass ich den sinn nicht verstehe warum android dauerhaft so viel speicher frei hält, muss es doch möglich sein, diese oom-werte spezifisch und dauerhaft festzulegen?!?
 
gibt es wirklich keine Möglichkeit den ram des n4 auch zu nutzen?? :-(
 
satand schrieb:
die app versetzt die prozesse im hintergrund nur in eine art ruhezustand. am beenden wird leider nichts gehindert :sad: trotzdem danke!

probiert?
das hab ich nämlich auch gelesen, dachte aber durch den "Ruhezustand" wird ebend dieser zustand abgespeichert (vlt. ausserhalb des Rams) und später wieder aufgerufen. Oder, dass wenigstens weniger Ram benötigt wird.

hmm anosnsten weiss ich auch nicht weiter. Hab aber bei meinem Nexus gemerkt, dass der 2GB Arbeitsspeicher sich schon krass bemerkbar macht. kann 3 Spiele und zusätzlich normale Apps laufen lassen und er merkt sich alles.
Evtl. mal ne andere Rom oder Kernel probieren, die mit dem Ram besser umgeht?
 
nein, habe es nicht getestet, da es eigentlich nicht das ist was ich möchte.
die apps sollen ja weiterlaufen und nur nicht beendet werden.

sieh dir mal an wieviel ram dennoch immer frei bleibt. bei mir sind es meist ~1gb die frei sind, obwohl schon wieder apps beendet werden. dies scheint jedoch ein allgemeines android-phänomen zu sein, nicht n4 spezifisch.
 
Ich habe auch schon alle Apps getestet von Auto memory Manager bis Pimp my rom. Aber alle zeigen keine Wirkung. Es werden fröhlich die apps ab 800 mb rest ram gekickt.

edit: Kann es sein das die Android Ram Anzeige falsch geht? Ich habe viele Apps gleichzeitig geöffnet und mal verglichen. Die Android Ram Anzeige zeigt dabei die üblichen 800+ MB Ram frei.

Gesendet von meinem Nexus 4 mit der Android-Hilfe.de App
 

Anhänge

  • Screenshot_2013-02-18-19-50-23.png
    Screenshot_2013-02-18-19-50-23.png
    40,8 KB · Aufrufe: 986
  • Screenshot_2013-02-18-19-50-41.png
    Screenshot_2013-02-18-19-50-41.png
    160,3 KB · Aufrufe: 851
Zuletzt bearbeitet:
hmm, hast du schon mal die speicherauslastung der offenen apps zusammen gezählt?

nichtsdestotrotz sollte es doch möglich sein prioritäten zu setzen welche apps zuerst geschlossen werden. das ist sogar beim iphone mit jailbreak problemlos möglich.
 
wo sind denn hier die android-gurus, wenn man sie braucht? :D
 
Naja ich denke eine Swapfile bei einem Handy mit 2gb Arbeitsspeicher ist eher kontraproduktiv. Das Problem ist ja eher das das Nexus 4 den RAM nicht optimal ausnutzt.

Gesendet von meinem Nexus 4 mit der Android-Hilfe.de App
 
Vielleicht bring es was das Hintergrundprozesslimit zu erhöhen.
 
Cyanoid schrieb:
Vielleicht bring es was das Hintergrundprozesslimit zu erhöhen.

hier kann man auch nur maximal vier einstellen und nach einem neustart ist die einstellung wieder weg :(
 
ich denke gefunden zu haben was ich suche:

[FIX] Bulletproof Background Apps! - xda-developers

[U9RC12T6]Put a V6 SuperCharger +DIE-HARD Launcher in Your Pocket=She'll B Happy 2CU! - xda-developers

guide: [Guide] Supercharger V6 for everyone, make your phone faster - xda-developers

nachdem was ich gelesen habe, scheint es sache des kernels zu sein die oom-priority-werte festzulegen.

hier wäre noch eine methode:
On XDA I found a post discussing how to PIN an app to not get killed by OOM. As your question indicates your device is rooted, this could be useful for you. The principle described there can be applied to your case as well by simply changing the oom_adj value specified (the -17 would permanently PIN it, highest prio -- so use a larger value to "weaken" that).

The script snipped posted there looks like this:

#!/system/bin/sh
sleep 60

PPID=$(pidof com.estrongs.android.safer)
echo "-17" > /proc/$PPID/oom_adj
Now, as said, replace the -17 by your chosen value. Also replace the app's package name (com.estrongs.android.safer) by the package name of your target app. You can also lower the sleep value, or even ommit the sleep at all.

Now you need a way to auto-execute this as soon as your app is running. For this part, you could e.g. use Tasker: Context would be "app running" (and your app selected), and the task "run shell", with above script as parameter. Then, as soon as you start your app (and it comes to foreground), Tasker would execute the script -- and the oom_adj value should be applied.
 
Zuletzt bearbeitet:
Na dann, freiwillige vor! Ich habe den Script schon mal durchlaufen lassen und sehe noch keine Veränderung. Habe allerdings auch nur bis 50% Supergecharged. Es ist wohl zwingend notwendig die services.jar zu patchen:confused:
Ist es richtig, das je niedriger die minfree values liegen, desto später werden Apps gekillt?

Gesendet von meinem Nexus 4 mit der Android-Hilfe.de App
 
so wie ich das sehe gibt es nun zwei möglichkeiten:
entweder diese v6 supercharger methode. dazu gibt es hier eine schritt für schritt anleitung: [Guide] Supercharger V6 for everyone, make your phone faster - xda-developers
ohne dem patchen der services.jar funktioniert das ganze NICHT.
was mir jedoch nicht klar ist: sind cyanogenmod roms "odexed" oder "deodexed"?
zumal das ganze wohl eher etwas tricky ist.

dann übernimmt der supercharger wohl die komplette speicherverwaltung und lastet den speicher (vernünftigerweise) deutlich stärker aus.


die zweite methode ist das erstellen eines skriptes wie es hier beschrieben wird: [FIX] Bulletproof Background Apps! - xda-developers

in dem skript setzt man dann den oom-wert einer einzelnen app auf einen selbst definierten wert. anschließend muss man noch mit einer app sicherstellen, dass das entsprechende skript auch beim start der jeweiligen app ausgeführt wird. so sind dann nur gewisse apps davon betroffen. wobei sich dann die frage stellt, ob nicht android automatisch alles andere schließt, da der speicher dann durch die selbst definierten apps stärker ausgelastet ist.
 

Ähnliche Themen

K
Antworten
1
Aufrufe
1.486
kilopixel
K
S
Antworten
1
Aufrufe
1.128
Thyrion
Thyrion
Zinedroid
  • Zinedroid
Antworten
4
Aufrufe
1.225
Zinedroid
Zinedroid
Zurück
Oben Unten