Je voudrais copier mon projet Android et créer un nouveau projet à partir des mêmes fichiers, mais avec un nom différent. Le but est de pouvoir disposer d'une deuxième version de mon application, ad pris en charge dans l'App Store.
J'ai trouvé cette réponse ici:
Android - copier un projet existant sous un nouveau nom
Mais c'est pour Eclipse. Comment puis-je faire cela dans Android Studio?
Les étapes du lien que vous avez spécifié doivent également fonctionner pour Android Studio. Créez simplement une copie (à l'aide d'un gestionnaire de fichiers) de l'intégralité du dossier du module et attribuez-lui un nouveau nom. Ouvrez-le et ouvrez-le. utilisation Refactor -> Rename
_ (clic droit sur l'élément que vous souhaitez renommer) pour renommer votre module et votre package.
Voir this pour plus de détails sur le refactoring dans IntelliJ/Android Studio.
Si vous utilisez Gradle, n'oubliez pas de modifier l'attribut applicationId dans le fichier app/build.gradle.
Comme Free3dom a souligné , voici ce qu'il faut faire:
build.gradle
fichier pour changer le nom du paquet (vous pouvez utiliser le gestionnaire de fichiers).AndroidManifest.xml
pour changer le nom du paquet.gradle sync
.Cela semble fonctionner sans aucun problème.
Si vous utilisez la dernière version de Android Studio, vous pouvez le laisser vous aider à cela.
Remarque: J'ai testé cela dans Android Studio 3.0 uniquement.
La procédure est la suivante:
Dans la vue du projet (avec les captures et la structure à gauche de l'écran), sélectionnez Projet au lieu de . ) Android .
Le nom de votre projet sera en haut de l’arborescence (à côté des bibliothèques externes).
Sélectionnez votre projet puis allez à Refactor -> Copy...
.
Android Studio vous demandera le nouveau nom et l’emplacement où vous souhaitez copier le projet. Fournir la même chose.
Une fois la copie terminée, ouvrez votre nouveau projet dans Android Studio.
Les paquets seront toujours sous l'ancien nom du projet.
C’est le Java, l’ID d’application et tout ce qui a été généré avec l’ancien nom du paquet.
Nous avons besoin de changer ça.
Dans la vue du projet, sélectionnez Android .
Ouvrez le sous-répertoire Java et sélectionnez le paquet principal.
Puis faites un clic droit dessus et allez dans Refactor
puis Rename
.
Android Studio vous avertit que plusieurs répertoires correspondent au package que vous êtes sur le point de refactoriser.
Cliquer sur Rename package
et pasRename directory
.
Après cette étape, votre projet est maintenant complètement sous le nouveau nom.
Build -> Clean project
puis Build -> Rebuild project
.Le but de ceci est que je puisse avoir une deuxième version de mon application qui est supportée par la publicité dans l'App Store.
Actuellement, le meilleur moyen de le faire est sans copier le projet.
Vous pouvez le faire en utilisant différentes saveurs dans votre build.gradle
fichier.
productFlavors {
flavor1 {
applicationId = "com.example.my.pkg.flavor1"
}
flavorAdSUpport {
applicationId = "com.example.my.pkg.flavor2"
}
}
De cette manière, vous n’avez qu’une copie des fichiers et vous pouvez facilement gérer la différence.
Je suis ces étapes et ça marche jusqu'à présent:
Ceci est 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 savoir ce que je voulais savoir depuis que je suis nouveau sur Android Studio. Il a été testé dans Android Studio 3.2.1.
Ouvrez le projet que vous souhaitez cloner Android Studio. (Dans cet exemple, l'ancien nom du projet était test5
et le nouveau nom du projet était test6
)
Dans le volet de présentation des fichiers de gauche, cliquez sur: Projet (où l’on pourrait dire actuellement Android).
Ouvrez app/res/values / strings.xml et remplacez le nom de l'ancien projet (par exemple, test5) par le nouveau nom du projet en ligne:
<string name="app_name">test5</string>
Ouvrez Gradle scripts/build.gradle (Module: app) et remplacez la ligne par la même ligne avec le nouveau nom de votre projet:% fig4
applicationId "com.example.a.test5"
L’annexe du gitbook Android Cours de formation des concepteurs pour les développeurs) comprend les étapes permettant de copier et de renommer un projet existant:
Lors de la refactorisation du nom du paquet dans Android Studio, vous devrez peut-être cliquer sur la petite roue dentée à droite du paquet/Android/project/etc - navigateur et décocher 'compacts vides paquets centraux' dans afin de voir chaque partie du nom du paquet comme un répertoire propre, puis refactoriser pour des répertoires individuels.
J'utilise Android 3.3 et voici comment cela a fonctionné pour moi:
1 - Choisissez la vue du projet
2 - Cliquez avec le bouton droit sur le nom du projet, qui se trouve à la racine du projet, puis choisissez l’option refactor -> copy
, il vous invitera avec une fenêtre à choisir le nouveau nom.
3 - Après l'étape 2, Android vous créera un nouveau projet, vous devez l'ouvrir avec le nouveau nom.
4 - Changez le nom de l'application dans le "string.xml", c'est dans "app/res/values / string.xml"
Maintenant vous l'avez, le même projet avec un nouveau nom. Maintenant, vous voudrez peut-être changer le nom du paquet, il est décrit dans les étapes suivantes
(optionnel) Pour changer le nom du paquet main
5 - allez sur "app/Java", il y aura trois dossiers avec le même nom, un principal, un (androidTest)
et un (test)
, faites un clic droit sur celui principal et choisissez format -> rename
, il vous avertira que plusieurs répertoires correspondent à ce paquet, puis cliquez sur "Renommer le paquet". Choisissez un nouveau nom et cliquez dans le refactor. Maintenant, au-dessous de la vue code, voici un aperçu du refactor, cliquez sur "Do refactor"
6 - Allez dans l’option "build", cliquez sur "Clean project", puis "Rebuild project".
7 - Fermez maintenant le projet et rouvrez-le.
Citant de nt.bas answer :
Si vous utilisez la dernière version de Android Studio, vous pouvez le laisser vous aider à cela.
Remarque: J'ai testé cela dans Android Studio 3.0 uniquement.
La procédure est la suivante:
Dans la vue du projet (avec les captures et la structure à gauche de l'écran), sélectionnez Projet au lieu de Android.
Le nom de votre projet sera en haut de l’arborescence (à côté des bibliothèques externes).
Sélectionnez votre projet puis allez à Refactor -> Copy...
.
Android Studio vous demandera le nouveau nom et l’emplacement où vous souhaitez copier le projet. Fournir la même chose.
Une fois la copie terminée, ouvrez votre nouveau projet dans Android Studio.
Les paquets seront toujours sous l'ancien nom du projet.
C’est le Java, l’ID d’application et tout ce qui a été généré avec l’ancien nom du paquet.
Nous avons besoin de changer ça.
Dans la vue du projet, sélectionnez Android.
Ouvrez le sous-répertoire Java et sélectionnez le paquet principal.
Puis faites un clic droit dessus et allez dans Refactor
puis Rename
.
Android Studio vous avertit que plusieurs répertoires correspondent au package que vous êtes sur le point de refactoriser.
Cliquer sur Rename package
et pas Rename directory
.
Après cette étape, votre projet est maintenant complètement sous le nouveau nom.
Build -> Clean project
puis Build -> Rebuild project
.Jusqu'à présent, vous n'avez renommé que le nom complet de votre projet . Pour renommer le nom de l’emballage, vous devez suivre gnyrfta answer , décrit comme suit:
Lors de la refactorisation du nom du paquet dans Android Studio, vous devrez peut-être cliquer sur la petite roue dentée à droite du paquet/Android/project/etc - navigateur et décocher 'compacts vides paquets centraux' dans afin de voir chaque partie du nom du paquet comme un répertoire propre, puis refactoriser pour des répertoires individuels.
PS: Si vous rencontrez un
Échec de la finalisation de la session: INSTALL_FAILED_INVALID_APK: Split lib_slice_0_apk a été défini plusieurs fois.
Il suffit de supprimer le dossier de construction de appmodule et de reconstruire le projet!
Cela résoudra le problème!
Lorsque vous copiez votre projet, vous devrez également supprimer les fichiers de construction intermédiaires restants d'origine (certains actifs $ 4.class) des répertoires C: ...\AndroidStudioProjects (nom_projet)\app\build\intermediates\classes\release .... Sinon, le nouveau projet échouera presque certainement si vous tentez de compiler le projet copié. Le refactoring ne résoudra pas ce problème.
Accédez au dossier source où se trouve votre projet.
->Settings.gradle
.':your new project name '
J'ai eu des problèmes avec ce qui suit:
sur Android version Studio: 3.3.2
jusqu'à ce que j'ai tué le fichier .idea/workspace.xml.
$ cp -rv Testcopysource/ TestCopyDest
$ rm TestCopyDest/.idea/workspace.xml
$ stdio.sh & # Run Android Studio on Linux
Avant de faire cela Android Studio pointait toujours sur le dossier source original et tous les renommés étaient appliqués aux fichiers source originaux (dans Testcopysys dans mon exemple ci-dessus).