2015-03-05 9 views
10

Podczas testowania mojej gry 2D na emulatorze Nexusa 6 aplikacja uruchamia się i działa poprawnie za pierwszym razem. Ale kiedy zamykam aplikację i próbuję ją ponownie otworzyć, otrzymuję komunikat "Niestety, program uruchamiający się zatrzymał" i emulator się zawiesił. Dzieje się tak tylko w emulatorze Nexusa 6, w innych starszych AVD aplikacja ponownie się otwiera. Nic się nie pojawia w Logcat, kiedy to się dzieje."Niestety program Launcher został zatrzymany" na emulatorze Android Nexus 6

Zastanawiałem się, czy ktoś wie, dlaczego tak się dzieje, i tylko na emulatorze Nexusa 6. Mam podejrzenie następujące winowajców, ale nie jestem pewien:

  1. Out of memory - Nie zwolnić dowolny z zasobów bitmapy używanych w grze, powinienem tego robić, a jeśli tak, to powinna ona być z metoda surfaceDestroyed()?

  2. Problem z wątkiem - być może wątek nie został poprawnie zamknięty lub uruchomiony ponownie?

Każda pomoc zostanie doceniona!

Odpowiedz

14

Cóż, wymyśliłem to, okazało się, że jeśli zwiększam pamięć RAM i przestrzeń sterty w zaawansowanych ustawieniach AVD, nie mam tego problemu.

+0

Przydałoby się wiedzieć, jakie wartości faktycznie użyto. – RonU

+4

Miałem również ten problem. Użyłem 1536 pamięci RAM i zwiększono domyślną stertę 64 MB do 128 MB, a emulator przestał działać. – CaptRespect

+1

Dla mnie był to tylko rozmiar sterty, który wymagał zwiększenia. Początkowo było to 64 GB, więc podwoiłem go do 128 GB, co rozwiązało problem. Moja pamięć RAM ma tylko 512 MB. Zwiększenie nie miało żadnego efektu. –

0

Na Mac tutaj był domyślną lokalizację instalacji dla mnie:

cd /usr/local/Cellar/android-sdk/24.1.2/tools 

Następnie w tym folderze wpadłem

android avd 

Potem ustawić następujące ustawienia RAM 1536 MB VM Heap 64 MB

Pamięć wewnętrzna 768mb Karta SD 768mb

+0

Co z nas, z którym problem na prawdziwym urządzeniu Moje prawdziwe urządzenie powiedział ** Systemowy interfejs użytkownika zatrzymał się Niestety **,, po prostu wziąłem go do Carl Care Center, aby odzyskać launcher, jakie jest rozwiązanie tego problemu? –

+0

@LutaayaHuzaifahIdris W tym przypadku powinieneś zadać nowe pytanie, ponieważ to pytanie dotyczy tylko emulatora. – anataliocs