web-dev-qa-db-fra.com

Android studio prend trop de mémoire

J'avais installé Android Studio 1.0 RC 2. J'ai 4 Go de RAM installés, mais après le démarrage de Android Studio et le lancement de Android Emulator, plus de 90% de la mémoire physique n'a été utilisée que par ces deux-là. Est-il possible de réduire cette utilisation de la mémoire? En raison de ce problème de mémoire, je ne peux pas ouvrir d'autres applications en même temps. enter image description here

163
PPD

J'utilise actuellement Android Studio sur un ordinateur Windows 8.1 avec 6 Go de RAM.

J'ai constaté que la désactivation de VCS dans Android studio et l'utilisation d'un programme externe pour gérer VCS étaient d'une grande aide. Vous pouvez désactiver VCS en accédant à Fichier -> Paramètres -> Plugins et désactivez les éléments suivants:

  • Intégration CVS
  • Intégration Git
  • GitHub
  • Tests Google Cloud
  • Google Cloud Tools Core
  • Outils Google Cloud pour Android Studio
  • hg4idea
  • Intégration de Subversion
  • Intégration Mercurial
  • TestNG-J
204
jds17

Dans mon cas, il y avait deux sources principales d'accaparement de la mémoire: le IDE et Gradle:

Android Studio (jusqu'à 1,5 Go)

La machine virtuelle de l'EDI est configurée pour avoir une taille de tas maximale. Vous pouvez le voir dans le coin inférieur droit de l'interface principale:

Android Studio showing 725M max heap size

Vous pouvez réduire cela en modifiant les paramètres liés à la mémoire dans le fichier _.vmoptions_ . Par exemple, j'ai modifié la taille maximale du tas à 512 Mo:

_-Xmx512m
_

Malheureusement, j’ai constaté que réduire cette valeur augmentait la fréquence de Android Studio bloquant temporairement, peut-être pour effectuer sa récupération de place.

Gradle (jusqu'à 1,5 Go)

Gradle peut également utiliser beaucoup de RAM après avoir été développé pendant un certain temps. Windows l'a simplement montré comme Java(TM) Platform SE Binary:

Windows 8.1 Task Manager showing "Java(TM Platform SE binary" using 1,460.5 MB of memory

Vous pouvez résoudre ce problème en modifiant les options de la machine virtuelle Java Gradle. Vous pouvez le faire par utilisateur en modifiant gradle.properties :

  1. Ouvrez le fichier _gradle.properties_ en le créant s'il n'existe pas:
    • Windows: _%USERPROFILE%\.gradle\gradle.properties_
    • Linux/Mac: _~/.gradle/gradle.properties_
  2. Mettez à jour la propriété _org.gradle.jvmargs_ en la créant si nécessaire. Je mets le mien à ceci:

    _org.gradle.jvmargs=-Xmx256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
    _

Je n'ai pas remarqué de différence dans les performances de construction de mon petit projet avec une taille maximale de segment de mémoire définie sur 256 Mo (_-Xmx256m_).

Notez que vous devrez peut-être redémarrer Android Studio pour que le processus old Gradle soit tué; sinon, vous risquez de vous retrouver avec les deux en même temps.

Émulateur

En ce qui concerne l'émulateur occupant une grande partie de votre RAM, votre capture d'écran indique qu'il prend environ 800 Mo. Vous pouvez choisir la quantité de RAM à allouer à l'émulateur:

  1. Editer l'AVD
  2. Appuyez sur Afficher les paramètres avancés
  3. Réduisez la valeur de RAM

Android Virtual Device RAM configuration

98
Sam

Vous pouvez accélérer votre travail Eclipse ou Android Studio, il vous suffit de suivre ces étapes:

  • Utiliser/ouvrir un seul projet à la fois
  • nettoie votre projet après avoir exécuté votre application dans l'émulateur à chaque fois
  • utiliser un appareil mobile/externe au lieu d'un émulateur
  • ne fermez pas l'émulateur après l'avoir utilisé une fois, utilisez le même émulateur pour exécuter l'application à chaque fois
  • Désactivez VCS en utilisant Fichier-> Paramètres-> Plugins et désactivez les tâches suivantes:
    1.CVS Integration
    2.Git Integration
    3.GitHub
    4.Google Cloud Tools pour Android Studio
    5. Intégration de la sous-version

J'utilise également Android Studio avec 4 Go de mémoire principale installée, mais le respect de ces instructions améliore considérablement les performances de Android Studio.

49
Hunt

Android Studio a récemment publié un guide officiel pour les machines à mémoire réduite: Guide

Si vous exécutez Android Studio sur un ordinateur dont les spécifications sont inférieures aux spécifications recommandées (voir Configuration système requise), vous pouvez personnaliser le IDE pour améliorer les performances sur votre ordinateur, comme suit:

  • Réduisez la taille de segment maximale disponible pour Android Studio: réduisez la taille de segment maximale pour Android Studio à 512 Mo.

  • Mettre à jour Gradle et le plug-in Android pour Gradle: mettez à jour les dernières versions de Gradle et le plug-in Android de Gradle pour vous assurer de tirer parti des dernières améliorations pour la performance.

  • Activer le mode économie d'énergie: l'activation du mode économie d'énergie désactive un certain nombre d'opérations d'arrière-plan nécessitant beaucoup de mémoire et de batterie, notamment la mise en évidence des erreurs et les inspections à la volée, la complétion automatique du code et la compilation incrémentielle automatique en arrière-plan . Pour activer le mode d'économie d'énergie, cliquez sur Fichier> Mode d'économie d'énergie.

  • Désactiver les contrôles de peluches inutiles: pour changer les contrôles de peluches Android Studio exécutés sur votre code, procédez comme suit: Cliquez sur Fichier> Paramètres (sur un Mac, Android Studio> Préférences) pour ouvrir la boîte de dialogue Paramètres. Dans le volet de gauche, développez la section Editeur et cliquez sur Inspections. Cliquez sur les cases à cocher pour sélectionner ou désélectionner les contrôles de charpie en fonction de votre projet. Cliquez sur Appliquer ou sur OK pour enregistrer vos modifications.

  • Débogage sur un périphérique physique: Le débogage sur un émulateur utilise plus de mémoire que le débogage sur un périphérique physique. Vous pouvez donc améliorer les performances globales de Android Studio en procédant au débogage sur un périphérique physique.

  • Inclure uniquement les services Google Play nécessaires en tant que dépendances: inclure les services Google Play en tant que dépendances dans votre projet augmente la quantité de mémoire nécessaire. N'incluez que les dépendances nécessaires pour améliorer l'utilisation de la mémoire et les performances. Pour plus d'informations, voir Ajouter des services Google Play à votre projet.

  • Réduisez la taille maximale du tas disponible pour la compilation de fichiers DEX: définissez la compilation de fichiers javaMaxHeapSize for DEX sur 200 m. Pour plus d'informations, voir Améliorer les temps de génération en configurant les ressources DEX.

  • Ne pas activer la compilation parallèle: Android Studio peut compiler des modules indépendants en parallèle, mais si vous avez un système à mémoire insuffisante, vous ne devez pas activer cette fonctionnalité. Pour vérifier ce paramètre, procédez comme suit: Cliquez sur Fichier> Paramètres (sur un Mac, Android Studio> Préférences) pour ouvrir la boîte de dialogue Paramètres. Dans le volet de gauche, développez Génération, Exécution, Déploiement, puis cliquez sur Compilateur. Assurez-vous que l'option Compiler les modules indépendants en parallèle est désactivée. Si vous avez apporté une modification, cliquez sur Appliquer ou sur OK pour que la modification soit prise en compte.

  • Activer le mode hors ligne pour Gradle: Si vous avez un commutateur de bande limité, activez le mode hors ligne pour empêcher Gradle d'essayer de télécharger des dépendances manquantes lors de votre construction. Lorsque le mode hors connexion est activé, Gradle émettra un échec de la construction si des dépendances sont manquantes, au lieu de tenter de les télécharger. Pour activer le mode hors ligne, procédez comme suit:

    • Cliquez sur Fichier> Paramètres (sur un Mac, Android Studio> Préférences) pour ouvrir la boîte de dialogue Paramètres.

    • Dans le volet de gauche, développez Génération, Exécution, Déploiement, puis cliquez sur Graduer.

    • Sous Paramètres globaux, cochez la case Travail hors connexion.

    • Cliquez sur Appliquer ou sur OK pour que vos modifications prennent effet.

27
Androidmeda

J'ai utilisé toutes les recommandations de Sam ci-dessus, mais j'ai constaté que les options de ligne de commande VM ne sont plus prises en charge comme décrit. (J'ai reçu une erreur lors de l'utilisation)

Comme alternative, j'ai pu réduire drastiquement gradle en ajoutant la ligne suivante au fichier "gradle.properties"

org.gradle.jvmargs=-Xms512m -Xmx1024m

À partir de A.S. ver 1.3, le fichier se trouve au même niveau que "gradle.build".

La configuration ci-dessus est une "pile de mémoire" de 512 Mo et un "tas de mémoire" de 1024 Mo.

J'ai testé cela sur un petit projet, en utilisant des paramètres dans lesquels les deux tailles de mémoire étaient définies à 256 Mo. Il a limité les tailles JVM comme prévu. Dans tous mes tests, j'ai redémarré A.S. forcer la JVM à redémarrer.

Espérons que cela évitera aux autres personnes concernées par cette question d’obtenir la réponse "Procurez-vous un meilleur ordinateur". :-)

Dilber

14
SpacemanScott

Pour exécuter Android envirorment sur une machine à configuration réduite.

  1. Fermez les onglets Web non moins importants dans le navigateur.
  2. Pour les utilisateurs d’Antivirus, excluez le dossier de construction généré automatiquement.
  3. Le studio Android possède un tas de 1,2 Go par défaut pouvant atteindre 512 Mo

Aide> Modifier les options personnalisées VM

studio.vmoptions
 -Xmx512m

Les mises en page seront accélérées

  1. Pour Gradle, l’un des composants principaux de Android studio Mkae est certain 3.0beta est le dernier

Les astuces ci-dessous peuvent affecter la qualité du code, veuillez donc les utiliser avec prudence:

  1. Studio contient le mode d'alimentation sans danger lorsqu'il est allumé, il ferme les opérations en arrière-plan qui se ramollissent, complètent le code, etc.

  2. Vous pouvez exécuter manuellement le contrôle de la charpie en cas de besoin ./gradlew lint

  3. La plupart utilisent des émulateurs Android en moyenne consomment 2 Go de RAM , de sorte Si possible, utilisez le périphérique Android actuel, ce qui réduira la charge de vos ressources sur votre ordinateur. Vous pouvez également réduire la RAM de l'émulateur, ce qui réduira automatiquement la consommation de mémoire virtuelle sur votre ordinateur. vous pouvez le trouver dans la configuration de périphérique virtuel et les paramètres avancés.

  4. Le mode hors connexion Gradle est une fonctionnalité permettant aux utilisateurs limités en bande passante de désactiver le téléchargement. des dépendances de construction. Cela réduira le fonctionnement en arrière-plan, ce qui contribuera à améliorer les performances de Android studio.

  5. Android studio offre une optimisation pour compiler plusieurs modules en parallèle. Sur les machines RAM faibles, cette fonctionnalité aura probablement un impact négatif sur les performances. Vous pouvez le désactiver dans la boîte de dialogue des paramètres du compilateur .

2
Smit Patel

Pour réduire le décalage, je recommanderais les étapes suivantes

les spécifications de mon pc: 2 Go de RAM, processeur: Intel Core2 Duo

d'abord tuer tous les processus en arrière-plan, si vous avez un serveur ou une base de données en marche, vous pouvez les arrêter d'abord avec les commandes suivantes

Sudo service Apache2 stop

Sudo service mysql stop

Activez ensuite le mode d'économie d'énergie dans Android studio par fichier> mode d'économie d'énergie.

Cela pourrait désactiver le processus d'arrière-plan, et ensuite studio semble aller bien

2
Naveen

J'ai Android Studio 2.1.1 Utiliser un émulateur Genymotion Il est plus rapide si vous utilisez Android Marshmallow. Et My Ram is 4gb. Et installer le plugin pour genymotion dans Android Studio.Vous verrez un bon résultat au lieu de perdre du temps à démarrer Android emualtor cela prendra 5 min.genymotion 10 à 20 deuxième vitesse et plus rapide, donc je vous ai recommandé d'utiliser Genymotion.

1
Nick

Essayez de passer votre machine virtuelle Java à Eclipse openj9. Ça va utiliser beaucoup moins de mémoire. Je l'ai échangé et son utilisation à 600 Mo constamment.

1
Andy vj

J'aime cette vidéo YouTube de Google où figurent quelques conseils et astuces. La vidéo inclut également les avantages et les inconvénients des modifications suggérées.

Amélioration de Android Performances de Studio sur des machines à mémoire limitée

1
mmrmartin

Ouvrez le chemin mentionné ci-dessous sur votre système et supprimez tous vos AVD (périphériques virtuels: émulateur).

C:\Utilisateurs {Nom d'utilisateur} .Android\avd

Remarque: - La suppression de Emulator uniquement à partir de Android studio ne supprimera pas tous les espaces saisis par leur avd. Donc, supprimez tous les avd du chemin ci-dessus, puis créez un nouvel émulateur, si vous en aviez besoin.

0
Narender Gusain