120 votes

Copier un projet existant avec un nouveau nom dans Android Studio

Je voudrais copier mon projet Android et créer un nouveau projet à partir des mêmes fichiers, mais avec un nom différent. L'objectif est de disposer d'une deuxième version de mon application qui est prise en charge par l'App Store.

J'ai trouvé cette réponse ici :

Android - copier un projet existant avec un nouveau nom

Mais c'est pour Eclipse. Comment puis-je faire cela dans Android Studio ?

77voto

free3dom Points 4024

Les étapes du lien que vous avez indiqué devraient également fonctionner pour Android Studio. Il suffit de faire une copie (en utilisant un gestionnaire de fichiers) de l'ensemble du dossier du module et de lui donner un nouveau nom. Maintenant, ouvrez-le et utilisez Refactor -> Rename (clic droit sur l'élément que vous voulez renommer) pour renommer votre module et votre paquet.

Ver ce pour plus de détails sur le refactoring dans IntelliJ/Android Studio.

48voto

Sergii Points 52

Si vous utilisez Gradle - n'oubliez pas de modifier applicationId l'attribut dans app/build.gradle archivo.

47voto

nt.bas Points 676

Si vous utilisez la dernière version d'Android Studio, vous pouvez la laisser vous assister dans cette tâche.

Nota: J'ai testé ceci dans Android Studio 3.0 seulement.

La procédure est la suivante :

  1. Dans la vue du projet (qui vient avec les captures et la structure sur le côté gauche de l'écran), sélectionnez Projet au lieu de Android .
    Le nom de votre projet sera en haut de l'arbre (à côté des bibliothèques externes).
    Sélectionnez votre projet puis allez sur Refactor -> Copy... .
    Android Studio vous demandera le nouveau nom et l'endroit où vous voulez copier le projet. Fournissez les mêmes.

  2. Une fois la copie effectuée, ouvrez votre nouveau projet dans Android Studio.
    Les paquets seront toujours sous l'ancien nom du projet.
    Il s'agit des paquets de classes Java, de l'ID de l'application et de tout ce qui a été généré à l'aide de l'ancien nom de paquet.
    Nous devons changer cela.
    Dans la vue du projet, sélectionnez Android .
    Ouvrez le java et sélectionnez le paquet principal.
    Ensuite, faites un clic droit dessus et allez dans Refactor puis Rename .
    Android Studio vous donnera un avertissement indiquant que plusieurs répertoires correspondent au paquet que vous êtes sur le point de remanier.
    Cliquez sur Rename package y no Rename directory .
    Après cette étape, votre projet est maintenant complètement sous le nouveau nom.

  3. Ouvrez le fichier res/values/strings.xml, et changez le nom du projet.

  4. N'oubliez pas de changer l'ID de votre application dans le "Gradle Build Module : app".

  5. Une dernière étape consiste à nettoyer et reconstruire le projet, sinon, lorsque vous essayez d'exécuter votre projet, Android Studio vous dira qu'il ne peut pas installer l'APK (si vous avez exécuté le projet précédent).
    Alors Build -> Clean project puis Build -> Rebuild project .
    Vous pouvez maintenant exécuter votre nouveau projet cloné.

42voto

Veeru Points 2457

Como free3dom a souligné voici ce qu'il faut faire :

  1. Créer une copie à l'aide du gestionnaire de fichiers
  2. Modifiez manuellement le fichier build.gradle pour changer le nom du paquet (vous pouvez utiliser le gestionnaire de fichiers).
  3. Modifier manuellement AndroidManifest.xml pour changer le nom du paquet.
  4. Exécuter gradle sync .
  5. Ouvrez le projet dans Android Studio, et remaniez le nom du paquet.
  6. Exécutez gradle sync, encore une fois.

Cela semble fonctionner sans problème.

19voto

a.t. Points 379

Il s'agit d'une combinaison de la réponse de nt.bas et de l'étape 9 de la réponse de Civic avec des exemples visuels car il m'a fallu un certain temps pour trouver ce qui était prévu puisque je suis nouveau dans Android Studio. Il a été testé dans Android Studio 3.2.1.

  1. Ouvrez le projet que vous voulez cloner dans Android Studio. (Dans cet exemple, l'ancien nom du projet était test5 et le nouveau nom du projet était test6 )

  2. Dans le volet gauche de visualisation des fichiers, cliquez sur : Projet (où il pourrait actuellement être indiqué Android).

fig0

  1. Cliquez avec le bouton droit de la souris sur le projet dans le volet de l'explorateur de fichiers et cliquez sur refactor>clone.

fig1

  1. Changez le "Nouveau nom" en votre nouveau nom de projet et cliquez sur ok.

fig2

  1. Fichier>Ouvrir>Nouvelle fenêtre>Sélectionner votre nouveau projet>Ouvrir dans une nouvelle fenêtre de projet. Dans la nouvelle fenêtre, attendez jusqu'à ce que la ligne du bas d'Android studio soit terminée / dise : "Gradle Sync Finished".

16

17

14

  1. Dans le volet d'aperçu des fichiers : clic droit de la souris (RMB) sur : app.java/< your old project name> (pas le com.example.<your old project name>(androidTest) un, pas le com.example.<your old project name>(test) un, juste le blanc)

fig8

  1. Entrez le nouveau nom de votre paquet et sélectionnez les deux coches, cliquez sur refactor.

fig9 fig10

  1. Dans la barre inférieure gauche, cliquez sur "Do refactor".

fig12

  1. Ouvrez app/res/values/strings.xml et changez le nom de l'ancien projet (par exemple test5) par le nouveau nom du projet en ligne :

    <string name="app_name">test5</string>

fig3

  1. Ouvrez Gradle scripts/build.gradle (Module:app) et changez la ligne par la même ligne avec votre nouveau nom de projet:%fig4

    applicationId "com.example.a.test5"

fig4

  1. Une ligne jaune apparaîtra en haut de votre volet de code, demandant la synchronisation de gradle. Appuyez sur "sync now".

fig5

  1. dans la barre supérieure, appuyez sur build>Clean project.

fig13

  1. S'il est indiqué "Gradle build finished" en bas à gauche, vous cliquez sur "Build>Rebuild project".

fig14

fig15

  1. Vous devriez maintenant être en mesure de compiler et d'exécuter à nouveau votre projet (s'il a fonctionné en premier lieu).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X