Mam Droida 2. Mam długą, wymagającą dużych zasobów grę (dusze spektralne), które chciałbym pozostawić uruchomione, gdy nie korzystam z telefonu. Jeśli kliknę przycisk „Strona główna” Androida, aby wrócić do ekranu głównego, a następnie natychmiast ponownie uruchomię grę, będzie tam, gdzie skończyłem. To samo, jeśli wciśnę przycisk zasilania, aby spać, a następnie natychmiast włączę telefon, odblokuję i ponownie uruchom grę.
Jeśli zostawię go na jakiś czas (kilka godzin), to kiedy wrócę i uruchomię grę, zacznie się od nowa tak, jakby nigdy nie działała. W międzyczasie telefon nie był używany do niczego, chociaż synchronizacja jest włączona.
Moje pytanie jest dwojakie: w jaki sposób mogę uzyskać więcej informacji o tym, jakie aplikacje są zabijane, kiedy i dlaczego, oraz jak mogę je skonfigurować, aby ta aplikacja mogła nadal działać? Nie potrzebuję tego, aby ZROBIĆ cokolwiek w tle, chcę tylko, żeby nadal tam było, kiedy wrócę.
Znam koncepcję czyszczenia pamięci systemu Android, ponieważ jest ona potrzebna i nie wymaga zabójcy zadań, ale chcę, aby nie zabijała TEGO zadania, chyba że naprawdę go zakończę.
źródło
Odpowiedzi:
Jestem pewien, że nie jest to opcja w domyślnym projekcie Androida. Nigdy osobiście nie widziałem aplikacji do takich rzeczy, ponieważ większość ludzi chce, aby programy zostały zamknięte, aby utrzymać szybkość telefonu. To system Android zamyka nieużywane programy. Twórca aplikacji musiałby zaprojektować usługę, aby działała w tle lub była możliwa, jak zawsze w obliczeniach lub audio, aby system pomyślał, że program coś robi. To zjadłoby twoją baterię.
źródło
Sugestia: użyj Tasker, aby wyłączyć limit czasu ekranu dla aplikacji. Może to uniemożliwić przejście do tła.
źródło
Do pierwszej części twojego pytania;
Zestaw Android SDK zawiera krótkie podsumowanie dotyczące pamięci Android http://developer.android.com/guide/topics/fundamentals.html
Tak skutecznie system Android można podsumować jako programy do zabijania, gdy stwierdzi, że go nie używasz (kliknąłem przycisk „zamknij” w aplikacji) lub gdy zabrakło zasobów. Na przykład, jeśli masz 512 MB pamięci RAM, a 10 za darmo i uruchomisz aplikację, która potrzebuje 12, spróbuje określić najmniej używaną aplikację, z której może pobrać 12.
Zwykle robi to całkiem dobrze (przynajmniej z mojego doświadczenia). Możesz być w stanie wrócić do domu ze swojej gry i zrobić kilka rzeczy, ale po trzecie, eksmisja gry. Pamiętaj, w szczególności, w jakie gry wymagają dużych zasobów, więc prawdopodobnie zabije tę aplikację wcześniej niż później.
Powodem tego, że z czasem znika, jest prawdopodobnie proces synchronizacji, który próbuje się uruchomić i konkurować o zasoby. Strony pamięci aplikacji były w tym momencie bardzo rzadko odwiedzane, więc jest to uczciwa gra na każde odzyskanie pamięci, które zdaniem systemu operacyjnego jest konieczne.
Na twoje drugie pytanie;
Nie używam zabójcy zadań, ale jestem pewien, że dobre (wydaje się, że ATK jest liderem https://market.android.com/details?id=com.rechild.advancedtaskkiller&feature=search_result ) mają wyjątek lista. Możliwe jest dodanie białej listy do wybranej gry i umieszczenie na czarnej liście innych procesów.
Nie znam też tej gry, więc nie jestem pewien, jakie są możliwości automatycznego zapisywania. Mam nadzieję, że pomogłem.
źródło
Jak uzyskać więcej informacji o tym, jakie aplikacje są zabijane i dlaczego?
Możesz podłączyć telefon do adb ; a następnie włącz logcat ; zapisywanie danych wyjściowych do pliku.
W pliku dziennika będziesz mieć mnóstwo informacji; wyszukując swoją nazwę aplikacji; możesz dowiedzieć się, kiedy zostanie zabity.
Co możesz zrobić, aby zapobiec zatrzymaniu go przez system Android?
Nie wiem; mam nadzieję, że rAndy odpowiedź zadziała.
Jednak; Skontaktuj się z programistą i przekażę mu problem, ponieważ powinien on / ona mieć najłatwiejszy czas, aby go naprawić
źródło