Unikaj zabijania wyrzutni domowej

9

Mam kamień milowy Motoroli i dowiedziałem się, że ma on stosunkowo małą pamięć (pamięć w czasie wykonywania, a nie pojemność). Problemem z tym związanym jest to, że ilekroć zbyt wiele aplikacji chce działać w tle, system Android zaczyna zabijać rzeczy, a z moim Milestone dzieje się to bardzo łatwo.

Nie byłoby tak źle, gdyby nie fakt, że Android wydaje się uważać, że program uruchamiający w domu jest najmniej ważną ze wszystkich aplikacji (co jest absurdalnie złe). Na przykład w tej chwili mam serię aplikacji, które zanieczyszczają tło, niektóre ważne (jak Swype ) i niektóre bezcelowe (jak Facebook ). Gdybym otworzyć nawet prostą aplikację jak wiadomości czy kontaktów lub Ustawienia homelauncher ginie w tle. Po naciśnięciu przycisku Początek wita mnie pusty ekran główny i muszę czekać około 1–2 minut, aż wszystko się ponownie załaduje.

Dzieje się tak ze wszystkimi wyrzutniami domowymi, które wypróbowałem, choć łatwiej jest z cięższymi. Do tej pory udało mi się żyć z tym zachowaniem, religijnie unikając aplikacji działających w tle (a także widżetów). Ale to rozwiązanie nie jest idealne. To wciąż zdarza się częściej niż bym tego chciał.

Czy istnieje sposób na zmianę priorytetów Androida, jeśli chodzi o zabijanie aplikacji w tle? Ale dlaczego w domu wyrzutnia ranga niższa niż Google Maps „usługi lokalizacji i Facebooka ” s (nieaktywne) przesyłającej i wszystkiego innego? Chcę, aby program uruchamiający w domu był ostatnią rzeczą, która zostaje zabita, gdy pamięć jest niska lub jak najbliższa ostatniej możliwej (np. Oczywiście nie może zajmować wyższej pozycji niż aktualnie aktywna aplikacja, ale rozumiesz o co mi chodzi).

Obecnie mam zainstalowany Cyanogen mod 6, ale zdarzyło się to również na standardowym systemie operacyjnym Android i jestem gotów zainstalować absolutnie DOWOLNĄ niestandardową pamięć ROM, aby rozwiązać ten problem.

Malabarba
źródło

Odpowiedzi:

5

Myślę, że ADW Launcher ma ustawienie, które powinno przechowywać aplikację w pamięci. CM ma również ustawienie, które wymusza na systemie operacyjnym zachowanie programu uruchamiającego w pamięci. Nie pamiętam, gdzie jest w CM6, ale w CM7 jest Settings -> CyanogenMod Settings -> Performancei nazywa się „Lock Home in Memory”. Nie pamiętam, czy było w tym samym miejscu, czy było tak samo w CM6.

Ryan Conrad
źródło
Ta opcja jest pomocna, ale nie idealna. Tego właśnie używam (i dziękuję za zwrócenie na to uwagi), ale czasami powoduje niestabilność, a czasami powoduje awarię bieżącej aplikacji na pierwszym planie.
Malabarba
1
Każda aplikacja, która pozostanie w pamięci tak, jak chcesz, spowoduje niestabilność, o której wspominasz. Zmuszasz urządzenie do utrzymywania pamięci w użyciu dla programu uruchamiającego, gdy może być konieczne użycie go dla aktualnie uruchomionej aplikacji.
Ryan Conrad
3
Rozumiem. Dlatego wspomniałem w pytaniu, że program uruchamiający nie powinien mieć wyższego priorytetu niż aktualnie uruchomiona aplikacja, ale powinien być wyższy niż aplikacje działające w tle. Jest całkowicie w porządku, aby program uruchamiający został zabity, jeśli aktywna aplikacja potrzebuje pamięci, po prostu chciałem, aby została zabita po zabiciu innych aplikacji w tle (zamiast być pierwszą w kolejce). Ale zrozumiałe jest, że takiej opcji jeszcze nie ma =). Nie mogę mieć wszystkiego.
Malabarba
@BruceConnor, jest to prawdopodobnie jeden punkt przeciwko argumentowi, że „Android sam dobrze sobie radzi z pamięcią”. Myślę, że robi to w przeważającej części, po prostu zabija program uruchamiający wielokrotnie. Nie to, że zabójca zadań naprawdę by pomógł.
Szansa
1

Wypróbuj doładowanie v6 .

Może sprawić, że Twój ekran główny będzie „trudny do zabicia” lub „kuloodporny”. Jeśli masz ICS / JB, koniecznie pobierz wersję ICS / JB .

Pamiętaj też o wyłączeniu Lock Home in Memoryprogramu uruchamiającego (jeśli go ma) przed użyciem v6.

Mateen Ulhaq
źródło