web-dev-qa-db-fra.com

Android Studio ne déploie pas de modifications dans l'application

Parfois, ce scénario se produit lors du développement. Je voudrais faire un changement dans mon code source, cliquer sur enregistrer tout, puis exécuter, mais le changement ne serait apparemment pas reflété dans l'application - (j'utilise un appareil pour les tests). Je peux même désinstaller l'application sur mon appareil et cliquer de nouveau sur Exécuter. L'application nouvellement installée ne reflète toujours pas la modification apportée au code source. Lorsque cela se produit, je dois modifier la source, cliquer sur Exécuter, puis peut-être une nouvelle version contenant les modifications que j'attendais sera sur l'appareil. 

J'ai aussi essayé la solution ici, mais cela ne semble pas fonctionner souvent. 

Android Studio - Déploie mon application sans nouvelles modifications

81
Simply Brian

J'ai le même problème. Ce fil est apparu en premier lorsque je l'ai recherché. Résolu (en espérant) en n'utilisant pas la fonctionnalité Instant Run. Peut-être pas la meilleure solution mais ça marche pour le moment.

Il suffit d'aller dans "Fichier -> Paramètres -> Construire, Exécution, Déploiement -> Exécuter Instantané" et simplement le désactiver. Avec cette Android Studio construit à partir de zéro à chaque fois, mais c'est mieux que de ne pas le construire correctement.

Mini Rant: Presque chaque version d'Android Studio est livrée avec un bug ennuyeux. Ils sont sur le point de publier la version 2, mais sa version bêta est toujours boguée. J'espère qu'ils stabiliseront le IDE dans un proche avenir.

67
Goktay Kaykusuz

Hier (2018-03-27), Android Studio a publié une mise à jour officielle du 3.0.1 au 3.1, et il semble que beaucoup de gens (y compris moi-même) recommencent à courir dans ce problème.

Merci à # 5 commentez ici , voici comment cela a été résolu:

Dans Android Studio, accédez à Run> Edit Configuration.

Sous Before launch:, si vous ne trouvez pas Gradle-aware Make, procédez comme ci-dessous:

 enter image description here

Ajoutez Gradle-aware Make et laissez Task vide.

 enter image description here

Avertissement: Je ne sais pas ce que signifie cette action ni si elle entraînera des effets secondaires. Appréciez si quelqu'un peut donner plus d'explications à ce sujet!

MODIFIER

Merci à @ChristopherSmit référencé, cette page mentionne que Gradle-aware make signifie "Compiler le projet et exécuter Gradle".
Au début, je suppose que cela peut rendre Runs plus long même si aucun code n’a été modifié; mais après les tests, la deuxième fois est encore beaucoup plus rapide si aucun code n'a été modifié.
Étant donné que c’est une option par défaut si vous créez un nouveau projet avec AS 3.1, je pense que cette configuration est relativement sûre.

70
Sira Lam

J'ai eu le même problème, avec Android Studio 2.0.0, résolu en reconstruisant mon projet.

Build > Rebuild Project

 GUI Picture

ou par Nettoyer et réexécuter

Run > Clean and Rerun

 Clean and Rerun

35
Rüdiger

Cela a été un véritable casse-tête jusqu'à ce que je réalise que mes modifications ne doivent pas être propagées à tous les fichiers pertinents ... 

Si vous rencontrez des problèmes de mise en page, comme je le faisais, vous devrez peut-être mettre à jour la mise en page dans le dossier res> layout-v17 . J'avais apporté des modifications via la vue Conception dans le dossier layout et ces modifications semblaient être propagées automatiquement à layout-v17 , au départ. Cependant, les modifications ultérieures NE SONT PAS.

Vérifiez votre dossier res> layout-v17 et voyez si les fichiers .xml de ce dossier reflètent les modifications que vous voyez dans votre dossier res> layout . Vous constaterez probablement qu'ils ne le font pas. Corrigez ceci et redéployez. Comme moi, vous devriez voir le nouveau code mods.

J'espère que cela t'aides.

3
Alek Slodowska

Pour l'instant, j'ai résolu le problème en fermant l'application et en exécutant à nouveau. Ça a marché comme sur des roulettes. Pas encore sûr si c'est une coïncidence, mais je suppose que ça vaut le coup d'essayer. 

Je me demande vraiment si cela fonctionne aussi avec d'autres personnes. Essayons et laissez-moi savoir.

2
ugur

Pour moi, la course instantanée était un cauchemar, des temps de construction de 2 à 5 minutes et, souvent, les modifications récentes ne sont pas incluses dans les versions. Je recommande fortement de désactiver l'exécution instantanée et d'ajouter cette ligne à gradle.properties:

Android.enableBuildCache=true

La première construction prend souvent un certain temps pour les grands projets (1 à 2 minutes), mais après sa mise en cache, les versions suivantes sont généralement très rapides (moins de 10 secondes).

Vous avez obtenu cette astuce de l’utilisateur reddit/u/QuestionsEverythang qui m’a évité SO beaucoup de problèmes de temps en temps!

1
landonmutch

Assurez-vous que vous n'avez pas de disposition alternative. Si vous le faites, vous pouvez en changer un et en déployer un autre.

1
nPcomp

De plus, j'ai résolu le problème en n'utilisant pas la fonction Instant Run. Peut-être pas la meilleure solution mais ça marche pour le moment. J'utilise Android Studio 2.0 beta 2 ...

0
Rocco Foti

J'ai le même problème, j'ai décoché Instant Run et j'ai aussi essayé "option de nettoyage et d'exécution" mais ça ne fonctionne pas. J'ai essayé de le synchroniser, mais j'avais toujours le problème. Cela ne sera résolu que si je le reconstruis complètement en supprimant le dossier de construction.

0
Leons

Le même problème a commencé à se produire après la mise à niveau de la buildVersion à partir de 23. J'ai essayé de supprimer les AVD et de recréer, synchroniser avec des fichiers Gradle. Rien n'a aidé. La réinstallation complète de Andriod Studio a résolu le problème. Ce n'est peut-être pas la solution, mais cela n'a fonctionné que pour moi.

0
kann

Ce qui a fonctionné pour moi a été d’ajouter du mauvais XML à l’un de mes fichiers XML de mise en page, d’essayer de générer et d’obtenir une erreur, puis d’annuler à nouveau les modifications et de procéder au débogage. Pas joli, mais assez rapide.

Une autre chose qui semble fonctionner la plupart du temps: débranchez et reconnectez votre téléphone/périphérique de développement. Cela semble forcer une réinstallation, au moins sur ma machine Linux.

0
Guz

J'aime Instant Run Feature et je n'aime pas le désactiver uniquement à cause de ce bogue . Pas une solution, mais comme meilleure solution de contournement, je préférerais: 

  1. Appuyez sur "Applications récentes" 
  2. Fermez simplement mon application de la liste
  3. Lancez l'application à nouveau

Cela prend moins de temps que Clean ou Rebuild.

METTRE À JOUR

Relancez l'application fonctionne également:

 enter image description here

0
Milad Faridnia