Android copier un projet existant avec un nouveau nom dans Android Studio

Je voudrais copier mon projet Android et créer un nouveau projet sous les mêmes fichiers avec un nom différent. Le but de ceci est que je puisse avoir une deuxième version de mon application qui est soutenue par la publicité dans l’App Store.

J’ai trouvé cette réponse ici:

Android – copier un projet existant sous un nouveau nom

Mais sa pour éclipse, comment puis-je faire cela dans Android Studio?

Les étapes du lien que vous avez spécifié doivent également fonctionner pour Android Studio. Faites simplement une copie (en utilisant un gestionnaire de fichiers) du dossier complet du module et donnez-lui un nouveau nom. Maintenant, ouvrez-le et utilisez Refactor -> Rename (cliquez avec le bouton droit sur l’élément que vous souhaitez renommer) pour renommer votre module et votre package.

Voir ceci pour plus de détails sur le refactoring dans IntelliJ / Android Studio.

Si vous utilisez gradle, n’oubliez pas de changer l’atsortingbut applicationId dans le fichier app / build.gradle .

Comme free3dom l’a souligné , voici ce qu’il faut faire

  1. Créer une copie à l’aide du gestionnaire de fichiers
  2. Modifier manuellement le build.gradle l’application pour modifier le nom du package (vous pouvez utiliser le gestionnaire de fichiers)
  3. Modifier manuellement AndroidManifest.xml pour changer le nom du package
  4. Exécutez la synchronisation graduelle
  5. Ouvrez le projet dans Android Studio, modifiez le nom du paquet
  6. Exécutez encore une fois la synchronisation.

Cela semble fonctionner sans aucun problème

Si vous utilisez la dernière version d’Android Studio, vous pouvez le laisser vous aider.

Remarque: je l’ai testé dans Android Studio 3.0 uniquement.

La procédure est la suivante:

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

  2. Une fois la copie terminée, ouvrez votre nouveau projet dans Android Studio.
    Les paquets seront toujours sous l’ancien nom du projet.
    Ce sont les packages de classes Java, l’ID d’application et tout ce qui a été généré avec l’ancien nom de package.
    Nous avons besoin de changer ça.
    Dans la vue du projet, sélectionnez Android .
    Ouvrez le sous-répertoire java et sélectionnez le package principal.
    Puis faites un clic droit dessus et allez dans Refactor puis Rename .
    Android Studio vous avertira que plusieurs répertoires correspondent au package que vous êtes sur le sharepoint restructurer.
    Cliquez sur Rename package et non sur Rename directory .
    Après cette étape, votre projet est maintenant complètement sous le nouveau nom.

  3. Ouvrez le fichier res / values ​​/ ssortingngs.xml et modifiez 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).
    So Build -> Clean project puis Build -> Rebuild project .
    Vous pouvez maintenant exécuter votre nouveau projet cloné.

Le but de ceci est que je puisse avoir une deuxième version de mon application qui est soutenue par la publicité dans l’App Store.

Actuellement, le meilleur moyen de le faire est de ne pas copier le projet.
Vous pouvez le faire en utilisant différentes saveurs dans votre fichier build.gradle .

  productFlavors { flavor1 { applicationId = "com.example.my.pkg.flavor1" } flavorAdSUpport { applicationId = "com.example.my.pkg.flavor2" } } 

De cette façon, vous n’avez qu’une copie des fichiers et vous pouvez facilement gérer la différence.

Je suis ces étapes et cela a fonctionné jusqu’à présent:

  1. Copiez et collez le dossier auquel vous êtes habitué.
  2. Ouvrez Android Studio (v3.0.1).
  3. Sélectionnez Ouvrir un projet existant.
  4. Fermez le message qui apparaîtra avec le titre: “Import Gradle Projects”.
  5. À gauche de l’onglet Android, allez à: app -> java -> sélectionnez le premier dossier (votre dossier de projet)
  6. Refactor => Renommer … (Maj + F6)
  7. Renommer le package, sélectionnez les deux options – Placez le nom du nouveau dossier en minuscule.
  8. Do Refactor
  9. Sélectionnez: Synchroniser le projet avec les fichiers Gradle dans la barre d’outils.
  10. Build => Projet propre
  11. Accédez à app -> res -> values ​​-> ssortingngs.xml et modifiez le nom de l’application en 2ème ligne.

Accédez au dossier source où se trouve votre projet.

  1. Copiez le projet et le passé et changez le nom.
  2. Ouvrez le studio Android et rafraîchissez.
  3. Allez dans ->Settings.gradle .
  4. Include ':your new project name '

J’ai essayé des deux d’entre eux qui fonctionne bien pour moi. Citant de nt.bas et gnyrfta:

Si vous utilisez la dernière version d’Android Studio, vous pouvez le laisser vous aider.

Remarque: je l’ai testé dans Android Studio 3.0 uniquement.

La procédure est la suivante:

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

  2. Une fois la copie terminée, ouvrez votre nouveau projet dans Android Studio.
    Les paquets seront toujours sous l’ancien nom du projet.
    Ce sont les packages de classes Java, l’ID d’application et tout ce qui a été généré avec l’ancien nom de package.
    Nous avons besoin de changer ça.
    Dans la vue du projet, sélectionnez Android .
    Ouvrez le sous-répertoire java et sélectionnez le package principal.
    Puis faites un clic droit dessus et allez dans Refactor puis Rename .
    Android Studio vous avertira que plusieurs répertoires correspondent au package que vous êtes sur le sharepoint restructurer.
    Cliquez sur Rename package et non sur Rename directory .
    Après cette étape, votre projet est maintenant complètement sous le nouveau nom.

  3. Ouvrez le fichier res / values ​​/ ssortingngs.xml et modifiez le nom du projet.
  4. 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).
    So Build -> Clean project puis Build -> Rebuild project .

    Vous pouvez maintenant exécuter votre nouveau projet cloné.

Jusqu’à présent, vous ne renommez que le nom de votre projet. Pour renommer le nom de l’emballage, vous devez suivre l’étape gnyrfta décrite comme suit:

Lors du refactoring du nom de package dans Android Studio, vous devrez peut-être cliquer sur la petite roue dentée située à droite du navigateur package / android / project / etc et décocher la case Compact compact middle packages afin de voir chaque partie du nom du package comme un répertoire propre. Ensuite, pour les répertoires individuels, refactor.

PS: Si vous avez échoué à finaliser la session: INSTALL_FAILED_INVALID_APK: Split lib_slice_0_apk a été défini plusieurs fois

Supprimez simplement le dossier de compilation de appmodule et reconstruisez le projet!

Cela résoudra le problème!

Lors du refactoring du nom de package dans Android Studio, vous devrez peut-être cliquer sur la petite roue dentée située à droite du navigateur package / android / project / etc et décocher la case Compact compact middle packages afin de voir chaque partie du nom du package comme un répertoire propre. Ensuite, pour les répertoires individuels, refactor.

Cela devrait être un commentaire, mais vous n’avez pas assez de points pour cela.

Lorsque vous copiez votre projet, vous devrez également supprimer les fichiers de construction intermédiaires restants (someActivity $ 4.class) du répertoire C: … \ AndroidStudioProjects (nom_projet) \ app \ build \ intermediates \ classes \ release …. Sinon, vous aurez certainement des échecs de construction pour le nouveau projet si vous tentez de comstackr le projet copié. Le refactoring ne résoudra pas cela.

L’annexe du manuel de formation Android Developer Fundamentals Course Practics comprend des étapes pour copier et renommer un projet existant:

https://google-developer-training.gitbooks.io/android-developer-fundamentals-course-practicals/content/en/appendix_utilities.html#copy_project