Zainstalowałem Android Studio 1.0 RC 2. Mam zainstalowane 4 GB pamięci RAM, ale po uruchomieniu Android Studio i uruchomieniu Android Emulator, ponad 90% pamięci fizycznej zostało wykorzystane tylko przez te dwa. Czy istnieje sposób na zmniejszenie tego zużycia pamięci? Z powodu tego problemu z pamięcią nie mogę jednocześnie otwierać innych aplikacji.
175
msconfig
i wyłącz niepotrzebne aplikacje na karcie Uruchamianie . Wyłącz niepotrzebne efekty wizualne w systemie Windows. Po uruchomieniu emulatora Androida włącz opcję Użyj procesora graficznego hosta , szczególnie jeśli masz wydajną kartę graficzną. Mam komputer deweloperski z systemem Windows 7 i używam tylko 2-2,5 GB pamięci RAM w dowolnym momencie, co obejmuje: Windows 7, Eclipse, Mozilla Firefox (bez dodatków) i kroki dostosowywania systemu Windows, o których wspomniałem. Używam też Fedory i używa ona jeszcze mniej pamięci niż Windows.Odpowiedzi:
Obecnie używam Android Studio na komputerze z systemem Windows 8.1 z 6 gigabajtami pamięci RAM.
Odkryłem, że wyłączenie VCS w Android Studio i użycie zewnętrznego programu do obsługi VCS bardzo pomogło. Możesz wyłączyć VCS, przechodząc do Plik -> Ustawienia -> Wtyczki i wyłącz:
źródło
W moim przypadku były dwa główne źródła zawijania pamięci: IDE i Gradle:
Android Studio (do 1,5 GB)
Maszyna JVM środowiska IDE jest skonfigurowana tak, aby mieć maksymalny rozmiar sterty. Możesz to zobaczyć w prawym dolnym rogu głównego interfejsu:
Można zmniejszyć ten edytując ustawienia związane z pamięcią w tym
.vmoptions
pliku . Na przykład zmieniłem maksymalny rozmiar sterty na 512 MB:Niestety, odkryłem, że obniżenie tej wartości zwiększa częstotliwość tymczasowego zawieszania się Android Studio, być może w celu usunięcia śmieci.
Gradle (do 1,5 GB)
Gradle może również zużywać dużo pamięci RAM po pewnym czasie programowania. Windows pokazuje to jako
Java(TM) Platform SE Binary
:Możesz to naprawić, zmieniając opcje Gradle JVM. Możesz to zrobić dla każdego użytkownika, edytując
gradle.properties
:gradle.properties
plik i utwórz go, jeśli nie istnieje:%USERPROFILE%\.gradle\gradle.properties
~/.gradle/gradle.properties
Zaktualizuj
org.gradle.jvmargs
właściwość, tworząc ją w razie potrzeby. Ustawiłem na to:Nie zauważyłem żadnej różnicy w wydajności kompilacji dla mojego małego projektu z maksymalnym rozmiarem sterty ustawionym na 256 MB (
-Xmx256m
).Pamiętaj, że może być konieczne ponowne uruchomienie Android Studio, więc stary proces Gradle został zabity; w przeciwnym razie możesz skończyć z obydwoma działającymi w tym samym czasie.
Emulator
Jeśli chodzi o emulator zajmujący dużo pamięci RAM, zrzut ekranu pokazuje, że zajmuje około 800 MB. Możesz wybrać, ile pamięci RAM ma przydzielić emulatorowi:
źródło
.vmoptions
pliku jest napisane:*DO NOT* modify this file directly. If there is a value that you would like t$ please add it to your user specific configuration file. See http://tools.android.com/tech-docs/configuration
Jednak ponieważ wydaje się, że w moim systemie nie ma pliku specyficznego dla użytkownika, a strona internetowa nie wyjaśnia żadnych innych lokalizacji takiego pliku, skorzystam z tego rozwiązania. Aha i: MaxPermSize zostanie w pewnym momencie przestarzała. Zawsze ostrzega mnie o tym podczas uruchamiania IDE w terminalu.%USERPROFILE%
, co jest specyficzne dla użytkownika. Nie jestem zbyt dobry w Linuksie, ale instrukcje dla Maca i Linuksa mówią również, że plik znajduje się w~
katalogu domowym użytkownika? Jeśli pliku nie ma, może możesz go po prostu utworzyć; mówi dokumentacja, o której mowa powyżejInstead, you can customize the attributes by creating your own .properties or .vmoptions files in the following directories.
. Czy możesz dać mi znać, czy to działa, abym zaktualizował odpowiedź?~/.gradle/gradle.properties
.Możesz przyspieszyć pracę Eclipse lub Android Studio, po prostu wykonaj następujące czynności:
1. Integracja
CVS 2. Integracja z Git
3.GitHub
4.Google Cloud Tools for Android Studio
5. Integracja z subwersją
Używam również Android Studio z zainstalowaną pamięcią główną o pojemności 4 GB, ale przestrzeganie tych instrukcji naprawdę zwiększa wydajność mojego Android Studio.
źródło
Android Studio opublikowało niedawno oficjalny przewodnik po maszynach z małą ilością pamięci: Przewodnik
Jeśli używasz Android Studio na komputerze o specyfikacji mniejszej niż zalecana (zobacz Wymagania systemowe), możesz dostosować IDE, aby poprawić wydajność swojego komputera w następujący sposób:
Zmniejsz maksymalny rozmiar sterty dostępny dla Android Studio : Zmniejsz maksymalny rozmiar sterty dla Android Studio do 512 MB.
Zaktualizuj Gradle i wtyczkę Android dla Gradle : Zaktualizuj do najnowszych wersji Gradle i wtyczki Android dla Gradle, aby mieć pewność, że korzystasz z najnowszych ulepszeń wydajności.
Włącz tryb oszczędzania energii : Włączenie trybu oszczędzania energii wyłącza szereg operacji w tle intensywnie wykorzystujących pamięć i baterię, w tym podświetlanie błędów i inspekcje w locie, automatyczne uzupełnianie kodu i automatyczna przyrostowa kompilacja w tle. Aby włączyć tryb oszczędzania energii, kliknij Plik> Tryb oszczędzania energii.
Wyłącz niepotrzebne sprawdzanie kłaczków : Aby zmienić sprawdzanie kłaczków, które Android Studio uruchamia na Twoim kodzie, wykonaj następujące czynności: Kliknij Plik> Ustawienia (na Macu, Android Studio> Preferencje), aby otworzyć okno dialogowe Ustawienia.W lewym okienku rozwiń sekcję Edytor i kliknij Inspekcje. Kliknij pola wyboru, aby zaznaczyć lub odznaczyć sprawdzanie kłaczków odpowiednio do projektu. Kliknij Zastosuj lub OK, aby zapisać zmiany.
Debugowanie na urządzeniu fizycznym : debugowanie na emulatorze zużywa więcej pamięci niż debugowanie na urządzeniu fizycznym, dzięki czemu można poprawić ogólną wydajność Android Studio, debugując na urządzeniu fizycznym.
Uwzględnij tylko niezbędne usługi Google Play jako zależności : dołączenie usług Google Play jako zależności w projekcie zwiększa ilość potrzebnej pamięci. Uwzględnij tylko niezbędne zależności, aby poprawić użycie pamięci i wydajność. Aby uzyskać więcej informacji, zobacz Dodawanie usług Google Play do projektu.
Zmniejsz maksymalny rozmiar sterty dostępny dla kompilacji pliku DEX : Ustaw wartość javaMaxHeapSize dla kompilacji pliku DEX na 200m. Aby uzyskać więcej informacji, zobacz Poprawianie czasu kompilacji przez konfigurowanie zasobów DEX .
Nie włączaj kompilacji równoległej : Android Studio może kompilować niezależne moduły równolegle, ale jeśli masz system z małą ilością pamięci, nie powinieneś włączać tej funkcji. Aby sprawdzić to ustawienie, wykonaj następujące czynności: Kliknij Plik> Ustawienia (na Macu, Android Studio> Preferencje), aby otworzyć okno dialogowe Ustawienia. W lewym okienku rozwiń Build, Execution, Deployment, a następnie kliknij Compiler. Upewnij się, że opcja Kompiluj niezależne moduły równolegle nie jest zaznaczona.Jeśli dokonałeś zmiany, kliknij Zastosuj lub OK, aby zmiana została zastosowana.
Włącz tryb offline dla Gradle : jeśli masz ograniczoną przepustowość, włącz tryb offline, aby uniemożliwić Gradle próbę pobrania brakujących zależności podczas kompilacji. Gdy tryb offline jest włączony, Gradle zgłosi błąd kompilacji, jeśli brakuje jakichkolwiek zależności, zamiast próbować je pobrać. Aby włączyć tryb offline, wykonaj następujące czynności:
Kliknij Plik> Ustawienia (na Macu, Android Studio> Preferencje), aby otworzyć okno dialogowe Ustawienia.
W lewym okienku rozwiń Build, Execution, Deployment, a następnie kliknij Gradle.
W obszarze Global Gradle settings zaznacz pole wyboru Offline work.
Kliknij Zastosuj lub OK, aby zmiany odniosły skutek.
źródło
Użyłem wszystkich powyższych zaleceń Sama, ale stwierdziłem, że opcje wiersza poleceń maszyny wirtualnej nie są już obsługiwane zgodnie z opisem. (Otrzymałem błąd podczas używania)
Alternatywnie mogłem radykalnie zmniejszyć gradle, dodając następujący wiersz do pliku „gradle.properties”
Od wersji AS w wersji 1.3 plik znajduje się na tym samym poziomie folderu, co „gradle.build”.
Powyższa konfiguracja to „stos pamięci” 512 MB i „sterta pamięci” 1024 MB.
Przetestowałem to na małym projekcie, używając ustawień, w których oba rozmiary pamięci były ustawione na 256 MB. Zgodnie z oczekiwaniami ograniczyło to rozmiary maszyny JVM. We wszystkich moich testach zrestartowałem AS, aby wymusić ponowne uruchomienie maszyny JVM.
Miejmy nadzieję, że uchroni to inne osoby zajmujące się tym problemem przed uzyskaniem odpowiedzi „Zrób sobie lepszy komputer”. :-)
źródło
Mam Android Studio 2.1.1 Bro, używam emulatora genymotion. Szybciej, jeśli używasz Androida Marshmallow. A mój Ram ma 4 GB i zainstaluj wtyczkę do genymotion w Android Studio. Zobaczysz dobry wynik, zamiast tracić czas, uruchom android emualtor zajmie to 5 minut. Genymotion 10 do 20 sekund i szybciej, więc polecam ci użycie genymotion.
źródło
Aby zmniejszyć opóźnienie, polecam następujące kroki
specyfikacje mojego komputera: 2 GB pamięci RAM, procesor: Intel Core2 Duo
najpierw zabij wszystkie procesy w tle, jeśli masz uruchomiony serwer lub bazę danych, możesz je najpierw zatrzymać za pomocą następujących poleceń
usługa sudo apache2 stop
usługa sudo mysql stop
Następnie włącz tryb oszczędzania energii w Android Studio, wybierając plik> tryb oszczędzania energii
Może to wyłączyć proces w tle, a wtedy studio wydaje się działać dobrze
źródło
Power Save Mode
Aby uruchomić środowisko Android na komputerze o niskiej konfiguracji.
Wydajność układów będzie przyspieszona
Poniższe wskazówki mogą wpłynąć na jakość kodu, dlatego należy zachować ostrożność:
Studio zawiera tryb oszczędzania energii, gdy jest włączony, zamyka operacje w tle, takie jak lint, kompletacje kodu i tak dalej.
W razie potrzeby możesz ręcznie uruchomić sprawdzanie kłaczków
./gradlew lint
Większość z nich używa emulatorów Androida średnio, które zużywają 2 GB pamięci RAM, więc jeśli to możliwe, użyj rzeczywistego urządzenia z Androidem, co zmniejszy obciążenie zasobów komputera. Alternatywnie możesz zmniejszyć ilość pamięci RAM emulatora i automatycznie zmniejszy to zużycie pamięci wirtualnej na komputerze. można to znaleźć w konfiguracji urządzenia wirtualnego i ustawieniach zaawansowanych.
Tryb offline Gradle to funkcja dla użytkowników z ograniczoną przepustowością, która umożliwia wyłączenie pobierania zależności kompilacji. Zmniejszy to działanie w tle, co pomoże zwiększyć wydajność studia Android.
Studio Android oferuje optymalizację, aby kompilować wiele modułów równolegle. Na komputerach z małą ilością pamięci RAM ta funkcja prawdopodobnie będzie miała negatywny wpływ na wydajność. Możesz go wyłączyć w oknie dialogowym ustawień kompilatora .
źródło
Spodobał mi się ten film na YouTube od Google, w którym znajdują się wskazówki i triki. Film zawiera również zalety i wady proponowanych zmian.
Poprawa wydajności Android Studio na maszynach z ograniczoną pamięcią
źródło
Spróbuj przełączyć JVM na eclipse openj9. Będzie zużywał znacznie mniej pamięci. Zamieniłem go i ciągle używa 600Mb.
źródło
Nie wiem, czy to rozwiązanie, ale
Invalidate Cache and Restart
rozwiązałem ten problem w moim przypadku. Obecnie używam Android Studio 3.6źródło
Otwórz poniżej ścieżkę wzmianki w systemie i usuń wszystkie swoje avd (urządzenia wirtualne: emulator)
C: \ Users {nazwa użytkownika} .android \ avd
Uwaga: - Usunięcie emulatora tylko ze studia Android nie spowoduje usunięcia wszystkich miejsc zajętych przez ich avd. Więc usuń wszystkie avd z powyższej ścieżki, a następnie utwórz nowy emulator, jeśli potrzebujesz.
źródło