web-dev-qa-db-fra.com

Android - copier un projet existant avec un nouveau nom

Utilisation d'Eclipse. Disons que j'ai un projet "ProjectA" dans l'éclipseworkspace (dans un dossier ProjectA). Je veux copier le projet mais avec un nouveau nom (ProjectB) et faire ajuster toutes les références dans le nouveau projet. Je ne trouve pas beaucoup d'aide pour ce que je pensais être une opération de base variable. Je veux essayer des variations sur la conception/le code d'origine et créer une copie m'a semblé évident.

Toutes suggestions s'il vous plaît.

67
ron

J'en ai aussi besoin aujourd'hui et j'ai obtenu la réponse de mon collègue.

  1. vous venez de copier votre projet dans un nouveau (ctrl + c & ctrl + v).

  2. vous changez le nom du package dans votre manifeste

  3. Après cela, vous devez renommer votre package principal avec refactor. N'oubliez pas de sélectionner.

  4. Modifiez simplement le nom de votre application dans le manifeste

    application Android: icon = "@ drawable/icon" Android: label = "nouveau nom"

J'espère que je n'ai pas oublié quelque chose et ça vous aide

92
Tima

Je veux juste ajouter un élément à la liste de Mur Votema:

5) N'oubliez pas d'ouvrir le projet que vous souhaitez copier!

Il m'a juste fallu quelques minutes pour découvrir que cela ne fonctionne pas avec les projets fermés. :-)

23
iwpSoftware

Si vous utilisez Eclipse et que tout ce que vous voulez faire est de cloner votre projet Android et lui donner un nouveau nom de projet, faites simplement le copier/coller (Ctrl-C & Ctrl-V - étape 1 dans la réponse de Mur ci-dessus). Eclipse vous demandera un nouveau nom de projet lorsque vous collez et que vous avez terminé. Le nom et le répertoire du projet Eclipse sont indépendants du nom et du package de l'application.

17
jengelsma

Tâches obligatoires:

  1. Dans Eclipse, copiez et collez le projet. (Donnez un nouveau nom au projet)
  2. Dans Manifest, mettez à jour le nom du package et enregistrez. (Mettre à jour la configuration de lancement)
  3. Refactorisez et renommez le nom du package. (Mettre à jour les références)

Tâches facultatives:

  1. Dans Manifest, modifiez le libellé et l'icône de l'application, donc après
    en installant l'application sur votre appareil, elle ne sera pas confondue avec la première.
  2. Refactorisez et renommez le nom des fichiers Java, afin qu'ils ne soient pas confondus avec les fichiers de projet d'origine.
  3. Si vous avez utilisé des encodages tels que UTF-8 dans votre projet (afin de gérer des langues autres que l'anglais), vous devrez peut-être modifier et enregistrer ces fichiers afin que leur police s'affiche correctement.

Remarque: Si vous effectuez la 3e tâche avant la 2e tâche, certaines importations indésirables seront ajoutées à vos classes Java. Vous devrez ensuite supprimer ces importations.

5
Nima K

Il existe maintenant un outil automatique pour cela, qui fait partie de l'ADT.

  1. Assurez-vous que le projet Origin est ouvert dans Eclipse, copiez et collez vers un nouveau nom
  2. Faites un clic droit sur le nouveau projet> Android Tools> Rename Application Package

Terminé

3
Amir Uval

Je voulais juste ajouter ceci après avoir lutté avec un code que j'ai au travail:

N'UTILISEZ PAS LE NOM DU PAQUET EXPLICITEMENT DANS VOTRE Java CODE SANS QUOI. tel

il semble que j'avais de mauvaises références au nom du package. son nom a été utilisé explicitement comme chaîne (par exemple "com.pakge.mypkg") au lieu de Context.getPackageName ().

essayez d'atteindre cette méthode de toute façon, vous pouvez utiliser la méthode que je viens de mentionner, cela pourrait ne pas fonctionner pour vous ... essayez d'atteindre le nom de la méthode "getPackageName ()" à partir d'autres objets différents.

Comme dit ci-dessus, tout ce que vous avez à faire est de copier-coller le projet et de le renommer ["myApp.11"] mais parfois cette fonctionnalité est buggée dans Eclipse. Un tel cas se produit lorsque vous disposez de plusieurs versions du jdk. pour résoudre ce problème, Eclipse renomme les anciennes versions du jdk avec un trait de soulignement, par ex. _jdk17.2 et réessayez. si vous n'avez pas besoin de ces versions, supprimez-les.

1
Rubber Duck

Je suis allé dans le dossier de l'espace de travail sur C:/(chemin d'accès différent pour tous), j'ai copié le dossier du projet (Projet A) et l'ai collé avec un nouveau nom (Projet B). Modifiez le nom dans l'Explorateur. Puis, via Eclipse, fait un nouveau projet Android avec le nouveau nom (Projet B). Différente façon de le faire.

0
Ccorock

Une autre chose que j'ai remarquée est que si vous quittez Android:label="@string/app_name" il conserve en quelque sorte le nom d'origine de l'application lorsque vous affichez l'application copiée dans la liste des applications dans Settings > Applications > Manage applications mais si vous le changez en Android:label="Your App Name" il semble fonctionner correctement.

Veillez également à modifier correctement vos icônes en supprimant les anciennes et en important les nouvelles.

0
ben_nuttall

Je veux juste ajouter quelques points supplémentaires: - Assurez-vous que le nom du package doit être différent pour le nouveau projet et l'ancien projet si les deux projets vont être installés sur la même machine.

modifiez également le même dans Mainfest.xml sous

0
Droid Anupam

J'ai utilisé l'Eclipse Luna, j'ai essayé de copier un projet existant (Project_A) comme ci-dessous

  1. Créer un nouveau projet Java (son nom est Project_B)
  2. Faites un clic droit sur Project_B (pour faire apparaître le menu contextuel)
  3. Sélectionnez l'élément de menu "Importer ..." (pour afficher la boîte de dialogue "Importer")
  4. Dans la liste sous le champ "Sélectionner une source d'importation" pour étendre l'élément "Général"
  5. Double-cliquez sur le sous-élément "File System" (pour afficher la page "File System")
  6. Saisissez le chemin du répertoire "Project_A" dans le champ "From directory" (ou cliquez sur le bouton "Parcourir ..." pour rechercher et sélectionner le répertoire "Project_A")
  7. Cochez la case du répertoire "Project_A" dans le champ "From directory"
  8. Pour voir si le champ "Dans le dossier" affiche le nom du dossier en tant que "Project_B" (sinon, cliquez sur le bouton "Parcourir ..." pour rechercher et sélectionner le "Project_B")
  9. Cliquez sur le bouton "Terminer" (car le Project_B est vide, ne vous en souciez plus)
  10. Tout le contenu de Project_A est copié dans Project_B, nous pouvons exécuter le Project_B en tant que Project_A (si nécessaire, nous pouvons refactoriser le Project_B)
0
phchen2

Je ne dois pas répondre car la réputation n'est pas assez élevée - pour dire que je suis d'accord que @jengelsma a la meilleure réponse, copiez et collez, mais faites attention aux fichiers SVN (cachés) (dans les dossiers .svn)! À moins que vous ne vouliez les mêmes références que l'autre projet, vous ne les voulez pas.

Équipe> déconnectez-vous et cochez "Supprimer également les métadonnées SVN" sur votre nouvelle copie pour ce faire.

0
Jon