Comment renommer des packages dans le nouvel IDE Android Studio, basé sur IntelliJ IDEA?
Y a-t-il un refactoring automatique inclus?
Je veux faire du refactoring en masse, mais je ne sais pas comment. J'ai travaillé deux ans avec Eclipse et dans Eclipse, c'est une opération en un clic.
android-studio
ramzixp
la source
la source
Réponses:
Dans Android Studio, vous pouvez le faire:
Par exemple, si vous souhaitez passer
com.example.app
àmy.awesome.game
, alors:Dans votre volet Projet , cliquez sur la petite icône d'engrenage ( )
Décochez / désélectionnez l'
Compact Empty Middle Packages
optionVotre répertoire de packages sera désormais divisé en répertoires individuels
Sélectionnez individuellement chaque répertoire que vous souhaitez renommer et:
Refactor
Rename
Rename Package
au lieu de Renommer le répertoirecom
dans Android Studio, il peut donner un avertissement. Dans ce cas, sélectionnez Renommer toutOuvrez maintenant votre fichier de construction Gradle (
build.gradle
- généralementapp
oumobile
). Mettez à jour leapplicationId
dansdefaultConfig
votre nouveau nom de package et votre nouveau niveau de synchronisation, s'il n'a pas déjà été mis à jour automatiquement:Vous devrez peut-être modifier l'
package=
attribut dans votre manifeste.Nettoyer et reconstruire.
Terminé! Quoi qu'il en soit, Android Studio doit rendre ce processus un peu plus simple.
la source
com.example.test
verscom.example
puis supprimezcom.example.test
.Une autre bonne méthode est la suivante: créez d'abord un nouveau package avec le nom souhaité en cliquant avec le bouton droit sur le dossier Java → Nouveau → Package .
Ensuite, sélectionnez et faites glisser toutes vos classes vers le nouveau package. Android Studio refactorisera le nom du package partout.
Enfin, supprimez l'ancien package.
Terminé.
Très important:
Vous devez modifier manuellement le fichier AndroidManifest.xml et build.gradle dans le nouveau package si vous utilisez cette méthode.
la source
La modification de l' ID d'application (qui est désormais indépendante du nom du package) peut être effectuée très facilement en une seule étape. Vous n'avez pas besoin de toucher AndroidManifest. Procédez plutôt comme suit:
Notez que cela ne changera pas le nom du package. Le découplage du nom de package et de l'ID d'application est expliqué ici: http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename
la source
com.example.sample
à l'com.example
utilisation d'autres réponsesL'approche que j'ai utilisée pour renommer le nom du package est simple comme suit: -
Étape 1 : sélectionnez l'option Projet dans le menu de gauche d'Android Studio
Étape 2 : Faites un clic droit sur java et ajoutez un nouveau package et définissez le nom du package souhaité
Étape 3 : entrez votre nouveau nom de pack
Étape 4 : copiez tous les fichiers de votre ancien package et collez-les dans le nouveau package
Étape 5 : renommer le nom du package dans le fichier manifeste
Étape 6 : renommer le nom du package dans le fichier build.gradle
Étape 7 : Cliquez ensuite avec le bouton droit sur l'ancien package et supprimez-le avec toutes ses données, puis supprimez également ce répertoire
Étape 8 : Reconstruisez ensuite votre projet
Étape 9 : Ensuite, vous trouverez des erreurs de l'ancien nom de fichier d' importation dans votre projet Sélectionnez l'ancien nom de package dans n'importe quel fichier et appuyez sur CTRL + Maj + R , et entrez votre nouveau nom de package dans la zone de remplacement, puis appuyez sur rechercher
Étape 10 : Ensuite, une fenêtre contextuelle apparaît comme ci-dessous et sélectionnez l'option Tous les fichiers
Étape 11 : Reconstruisez à nouveau votre projet, bingo, le nom de votre pack de projet a été modifié :)
la source
Placez votre curseur dans le nom du package comme indiqué ci-dessous. Ne le sélectionnez pas, placez-le simplement.
Ensuite, appuyez sur Shift+, F6vous obtiendrez une fenêtre contextuelle, comme indiqué ci-dessous, sélectionnez Renommer le package .
Entrez votre nouveau nom et sélectionnez Refactor . (Notez que mon curseur est sur "quelque chose", seul quelque chose est renommé.)
C'est fait.
la source
Cliquez avec le bouton droit sur le package dans le panneau de projet .
Choisissez Refactor -> Rename dans le menu contextuel.
la source
Ouvrez le fichier:
application → manifestes → AndroidManifest.xml
Mettez en surbrillance chaque partie du nom du package que vous souhaitez modifier (ne mettez pas en surbrillance le nom du package entier) puis:
Suivez ces étapes dans chaque partie du nom du package.
Ouvrir (Gradle Script) >> (build.gradle (Modul: app))
et mettez à jour l' applicationId à votre nom de package
Ouvrez le menu (build) et choisissez (Rebuild Project).
la source
IntelliJ IDEA a une option appelée "Compact Empty Middle Packages". Sélectionnez l'icône d'option de l' onglet Projet et désactivez-la.
Voir: Comment puis-je changer le nom d'un package de niveau supérieur dans IntelliJ IDEA?
la source
Sélectionnez le package qui sera refactorisé. Refactor → Move → "Move xxx to new package" .
la source
J'ai vu les meilleures réponses votées mais j'ai trouvé que c'était un peu différent pour ce faire, j'essaie de faire le tutoriel le plus complet.
Dans Android Studio, cliquez sur l'icône d'engrenage ( ), puis sélectionnez l'option:,
"Compact Empty Middle Packages"
pour voir les dossiers séparés dans une arborescence.Maintenant, sélectionnez le dossier, cliquez sur le bouton droit pour ouvrir le menu contextuel, sélectionnez
Refactor
puisRename
Il vous sera conseillé de refactoriser le package:
Ensuite, une fenêtre affichera les coïncidences à l'intérieur du projet, sélectionnez
"Do Refactor"
:Nous n'avons pas à modifier manuellement les fichiers AndroidManifest.xml ou build.gradle, la refactorisation du package fera l'affaire !.
la source
Si le nom de votre package est séparé par plus de deux points, disons
com.hello.world
et en plus, vous n'avez rien mis danscom/
etcom/hello/
. Toutes vos classes y participentcom/hello/world/
, vous pouvez FAIRE les étapes suivantes pour refactoriser le nom de vos packages dans Android Studio ou IntelliJ:com/
,com/hello/
). Vous pouvez y parvenir en ajoutant d'abord deux fichiers au package com.hello.world, par exemplepuis refactorisez-les en les déplaçant respectivement vers com et com.hello. Vous verrez com et com.hello assis là au projet (
Alt+1
ouCommand+1
pour un raccourci) et renommer les répertoires refactoring attend là comme vous vous y attendiez.Refactorisez pour renommer un ou plusieurs de ces répertoires pour atteindre votre objectif. La seule chose que vous devriez remarquer ici est que vous devez choisir les répertoires plutôt que les packages lorsqu'une boîte de dialogue vous le demande.
Si vous avez beaucoup de classes dans votre projet, il vous faudra un certain temps pour attendre son auto-scan-and-rename.
En outre, vous devez renommer manuellement le nom du package dans AndroidManifest.xml, de sorte que d'autres noms de ce fichier puissent bénéficier du préfixe.
[AUSSI] , il vous faudra peut-être tout remplacer
com.hello.world.R
par le nouveauXXX.XXX.XXX.R
(Command+Shift+R
pour faire court)Reconstruisez et exécutez votre projet pour voir s'il fonctionne. Et utilisez "Rechercher dans le chemin" pour trouver d'autres noms non tactiles que vous souhaitez renommer.
la source
Assurez-vous d'aller à la grande réponse de Sheharyar . Il y a tellement de réponses et de commentaires qui suivent qu'il serait facile de se confondre et d'abandonner, mais ne le faites pas . Cette réponse fonctionne .
En bref, vous faites trois choses :
(1) Désélectionnez
Compact Empty Middle Packages
.(2)
Refactor
puisRename
chaque ancien noeud de répertoire en choisissantChange Package
( nonChange Directory
) de faire correspondre le nouveau nom de package. (Assurez-vous de faire un aperçu des modifications.)(3) Modifiez le
build.gradle
fichier et faitesAPPLICATION_ID
correspondre le nouveau nom du package.la source
Réponse mise à jour: mai 2015
OK, j'ai eu du mal à cloner et renommer des projets dans Android Studio, mais j'ai finalement réussi. Voici les étapes à suivre:
C'est ça...
la source
J'ai trouvé une solution beaucoup plus facile à ce problème qui a également changé les importations générées comme
com.test.testpackagechange.R
et ne prend qu'une minute environ.Votre première étape consiste à ouvrir Android Studio et à ouvrir la fenêtre de remplacement (Mac: cmd + shift + R, Windows je suppose: ctrl + shift + R). Tapez votre ancien nom de package et celui ci-dessous votre nouveau nom de package. Cliquez sur Rechercher. Cela peut prendre un certain temps car il examine également les éléments générés. S'il contient plus de 1000 hits, cliquez simplement sur continuer.
Après avoir fait cela, appuyez sur Remplacer tout pour remplacer votre ancien nom de package par le nouveau.
Fermez maintenant Android Studio et accédez au Finder sur Mac ou à l'Explorateur Windows sur Windows. Modifiez le nom des dossiers en votre nouveau nom de package, comme ceci:
Maintenant, ouvrez à nouveau Android Studio. Gradle se synchronisera et le nom de votre package devrait être changé pour le nouveau.
J'ai trouvé que c'était le plus simple et celui qui couvre tous les domaines comme les fichiers générés.
la source
L'erreur courante que l'on peut faire est qu'on ne peut pas renommer la structure du package, c'est-à-dire qu'il n'est pas possible de changer com.name.android en com.Renamed.android quand on essaie de modifier au niveau com.name.android .
Afin d'avoir le même changement souhaité remonter d' un niveau -à- dire com.name et ici quand vous changez Refactoriser à Rebaptisé . Cela fonctionnera toujours.
la source
J'ai trouvé un autre moyen qui fonctionne ou une étape supplémentaire pour certaines des réponses ici, surtout si vous souhaitez également modifier le domaine. Cela fonctionne dans Android Studio 1.4. C'est ce que j'ai fait:
build.gradle
fichier d' application et remplacez l'ID d'application dans defaultConfig par le même nom que dans le manifeste et reconstruisez le projet.Ainsi, par exemple, si vous souhaitez renommer "com.example.app" en "com.YourDomain.app", ouvrez un fichier sous le package à renommer, dans le package breadcrumbs, placez votre curseur sur la partie "example" du domaine et appuyez sur Shift+ F6et renommez le package en "YourDomain".
la source
Le nom de votre package sera modifié à partir de tous les fichiers Java et du fichier manifeste. Vous devez modifier manuellement le nom du package à partir de
build.gradle
.la source
Modifier le nom du package
Pour renommer le nom de votre package, il vous suffit d'aller dans votre
AndroidManifest.xml
fichier, de placer le curseur de votre souris devant la partie du nom de package que vous souhaitez modifier.Clic droit> Refactoriser> Renommer
Dans la nouvelle fenêtre, appuyez sur Renommer le package
Changez le nom et appuyez sur Refactor
… Et appuyez sur Do Refactor en bas.
Le nom de votre package est généralement au format com.domain.appname, dans cet exemple, nous avons modifié la partie appname, mais vous pouvez également effectuer les mêmes étapes pour le domaine.
Terminé! Vous avez changé le nom de votre package!
la source
J'ai essayé les deux solutions les plus votées mais j'ai trouvé des problèmes même si les deux fonctionnent dans une certaine mesure.
Après quelques expériences, j'ai trouvé que la méthode suivante fonctionnait bien pour moi.
Si vous avez juste besoin de changer la dernière partie du nom du package, utilisez la méthode décrite par GreyBeardedGeek, à savoir
Cliquez avec le bouton droit sur le package dans le volet Projet. Choisissez Refactor -> Rename dans le menu contextuel
Si vous devez modifier le nom complet du package, procédez comme suit.
Cliquez avec le bouton droit sur le package dans le volet Projet. Choisissez Refactor -> Move dans le menu contextuel
Cela créera un nouveau dossier de package (si nécessaire) mais conservera la dernière partie du nom de votre package comme auparavant. Si vous devez modifier la dernière partie, effectuez le changement de nom en conséquence.
Notez également que vous devrez peut-être modifier les noms de packages dans, par exemple, build.gradle, manifeste et / ou tout fichier de ressources xml, ou même dans votre code s'il est codé en dur. Après tout cela, faites le projet Sync / Clean / Rebuild si nécessaire.
la source
Comment renommer
com.example.app
àcom.android.app
:dans l'
com.example.app
exemple de sélection de packageShift + F6
choisir
rename package
renommer l'exemple en android
confirmer
do refactor
la source
Faites un clic droit sur le paquet -> refactoriser et changez le nom.
Vous pouvez également le modifier dans le manifeste. Parfois, si vous modifiez le nom du package, mais après avoir créé le fichier .apk, il affiche un nom de package différent. À ce moment, vérifiez "applicationId" dans le fichier build.gradle .
la source
Je recommande d'utiliser le Sublime Text (ou Notepad ++ ). Remplacez com.one.lastname -> com.two.newname et com / one / lastname -> com / two / newname dans ... \ Projects [MyProject]. et n'oubliez pas de renommer ... \ Projects \ MyProject \ app \ src \ main \ java \ com \ one \ lastname, ... \ Projects \ MyProject \ app \ src \ test \ java \ com \ one \ lastname et ... \ Projects \ MyProject \ app \ src \ androidTest \ java \ com \ one \ lastname!
C'est tout:)
la source
Je pense que ce que vous recherchez est Refactor> Move. Vous pouvez également appuyer sur F6.
Vous obtiendrez deux popups. Assurez-vous de sélectionner renommer le package sur les deux. Après cela, vous obtiendrez une fenêtre contextuelle pour placer le nouveau nom de package.
Veuillez noter que si le nom de votre package est, par exemple, com.example.android.projectname, cela vous permettra de remplacer com.example.android par autre chose.
Encore une chose, cela mettra également à jour l'applicationId dans votre build.gradle. Assurez-vous simplement que les cases à cocher "recherche dans les commentaires et les chaînes" et "recherche d'occurrences de texte" sont toutes les deux cochées pour que cela fonctionne.
la source
Un moyen simple et rapide:
1- Ouvrez
MainActivity.java
ou n'importe quel fichier java disponible.En haut se trouve la déclaration de package telle que:
sélectionnez la partie de package que vous souhaitez modifier et appuyez sur Maj + F6 . Personnellement, je veux changer le
example
.Dans la boîte de dialogue d'avertissement, sélectionnez Renommer le package , puis insérez le nom du package souhaité.
2- La balise ouverte
AndroidManifest.xml
et intérieure<manifest>
change lepackage
pour le nom de paquet souhaité.3- Ouvrez
build.gradle(Module: app)
et changez leapplicationId
pour le nom de package souhaité.la source
Sélectionnez une option
Décochez l'option Compact Empty Middle Packages.
Renommer le répertoire crl en crl1
Enfin, cliquez sur le bouton Do Refactor marqué dans l'image ci-dessous, entrez le code ici
Après les modifications apportées
la source
Veuillez essayer les étapes suivantes:
******* Enfin c'est fait ******
la source
Appuyez sur Ctrl+ Shift+R
Remplacez l'ancien package par le nouveau.
Faites un clic droit sur le nom du package.
Refactor
>Rename
et renommer le nouveaula source
ctrl+ Shift+ Ra toujours fonctionné pour moi. Simplement
replace all
et choisissezAll Files
.la source
La première partie consiste à créer un nouveau package sous
java
dossier et à sélectionner puis à faire glisser tous vos fichiers source deold package
à celui-cinew package
. Après cela, vous devezremane
saisir le nom du package dans Androidmanifest
pour le nom du nouveau package.À l'étape 2, voici ce que vous devez faire: vous devez modifier l'ancien nom du package dans
applicationId
le modulebuild.gradle
de votre studio Android en plus de changer le nom du package dans lemanifest
. Donc en résumé, cliquez surbuild.gradle
ce qui se trouve sous le "AndroidManifest.xml" et modifiez la valeur deapplicationId
votre nouveau nom de package.Puis, tout en haut, en dessous
build
.clean
votre projet, alorsrebuild
. Ça devrait aller d'ici.la source
La meilleure façon est d'écrire le nouveau nom du package et de le faire glisser depuis l'ancien nom du package.
La deuxième façon, si vous cliquez sur Refactor puis déplacez l'option puis renommez le nom du package, il renommera le nom du package, puis reconstruira.
Dans Build.gradle, vous devez le faire manuellement, si vous refactorisez, il ne sera pas renommé dans Build.gradle.
la source