Comment renommer des packages dans le nouveau IDE Android Studio, basé sur IntelliJ IDEA?
Une refactorisation automatique est-elle incluse?
Je veux faire du refactoring en masse, mais je ne sais pas comment. J'ai travaillé deux ans avec Eclipse et dans Eclipse, l'opération se fait en un clic.
Par exemple, si vous souhaitez modifier com.example.app
en my.awesome.game
, alors:
Dans votre volet Projet , cliquez sur la petite icône représentant un engrenage ( )
Désélectionnez/désélectionnez l'option Compact Empty Middle Packages
Votre répertoire de paquets va maintenant être 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épertoire.com
dans Android Studio, un avertissement peut être émis. Dans ce cas, sélectionnez renommer toutOuvrez maintenant votre fichier Gradle Build File (build.gradle
- Habituellement app
ou mobile
) Mettez à jour le applicationId
dans le defaultConfig
vers votre nouveau nom de package et le nouveau graduel de synchronisation, s'il n'a pas déjà été mis à jour automatiquement:
Vous devrez peut-être modifier l'attribut package=
dans votre manifeste.
Nettoyer et reconstruire.
Fait! Quoi qu'il en soit, Android Studio doit simplifier un peu ce processus.
Une autre bonne méthode est la suivante: créez d’abord un nouveau paquet avec le nom souhaité en cliquant avec le bouton droit de la souris sur le dossier Java → Nouveau → Package .
Ensuite, sélectionnez et faites glisser toutes vos classes dans le nouveau package. Android Studio refactorisera le nom du paquet partout.
Enfin, supprimez l’ancien paquet.
Terminé.
Très important:
Vous devez modifier manuellement le fichier AndroidManifest.xml et build.gradle vers le nouveau package si vous utilisez cette méthode.
La modification de l'ID de l'application (qui est maintenant indépendante du nom du paquet) peut être effectuée très facilement en une seule étape. Vous n'êtes pas obligé de toucher AndroidManifest. Au lieu de cela, procédez comme suit:
Notez que cela va not changer le nom du paquet. Le découplage du nom du package et de l'ID de l'application est expliqué ici: http://tools.Android.com/tech-docs/new-build-system/applicationid-vs-packagename
L'approche utilisée par moi pour renommer le nom du paquet est simple, comme suit: -
Étape 1 : sélectionnez l'option Projet dans le menu de gauche de Android Studio.
Étape 2 : faites un clic droit sur Java et ajoutez un nouveau package, puis définissez le nom du package souhaité.
Étape 3 : Entrez votre nouveau nom de fichier
Étape 4 : Copiez tous les fichiers de votre ancien paquet et collez-les dans le nouveau
Étape 5 : renommez le nom du paquet dans le fichier manifeste
Étape 6 : renommez le nom du paquet dans le fichier build.gradle
Étape 7 : Ensuite, cliquez avec le bouton droit sur l'ancien paquet, supprimez-le avec toutes ses données, puis supprimez ce répertoire.
Étape 8 : reconstruisez ensuite votre projet
Étape 9 : Ensuite, vous trouverez quelques erreurs de l'ancien nom du paquet d'importation dans votre projet . Sélectionnez le nom du vieux paquet fichier et appuyez sur CTRL + Maj + R , et entrez votre nouveau nom de paquet dans la boîte de remplacement, puis appuyez sur find
Étape 10 : une fenêtre contextuelle apparaît, comme ci-dessous, et sélectionnez l'option Tous les fichiers correspondante.
Étape 11 : reconstruisez à nouveau votre projet, bingo votre nom de fichier de projet a été modifié :)
Placez votre curseur dans le nom du paquet, comme indiqué ci-dessous. Ne le sélectionnez pas, placez-le simplement.
Puis appuyez Shift + F6 vous obtiendrez une fenêtre contextuelle comme indiqué ci-dessous, sélectionnez Renommer le package .
Entrez votre nouveau nom et sélectionnez Refactor . (Notez que puisque mon curseur est sur "quelque chose", seul quelque chose est renommé.)
C'est ça fait.
Cliquez avec le bouton droit de la souris sur le package dans le Panneau de projet.
Choisissez Refactor -> Renommer dans le menu contextuel.
Ouvrez le fichier:
app → manifestes → AndroidManifest.xml
Mettez en surbrillance chaque partie du nom du paquet que vous voulez modifier (ne mettez pas en surbrillance le nom du paquet en entier), puis:
Suivez ces étapes dans chaque partie du nom du package.
Open (Gradle Script) >> (build.gradle (Modul: app))
et mettez à jour le applicationId avec le nom de votre paquet
Ouvrez le menu (build) et choisissez (Rebuild Project).
IntelliJ IDEA dispose d'une option intitulée "Compacter les packages intermédiaires vides". Sélectionnez l'icône d'option de l'onglet Projet et désactivez/activez-la.
Voir: Comment puis-je modifier le nom du package de niveau supérieur dans IntelliJ IDEA?
Sélectionnez le package qui sera refactoré. Refactor → Déplacer → "Déplacer xxx dans un nouveau package".
J'ai vu les réponses les plus votées, mais j'ai trouvé que c'est un peu différent de le faire, j'essaie de faire le tutoriel le plus complet.
Depuis le Android Studio, cliquez sur l’icône représentant une roue dentée ( ) puis sélectionnez l'option: _"Compact Empty Middle Packages"
_, pour voir les dossiers séparés dans une vue arborescente.
Maintenant, sélectionnez le dossier, cliquez avec le bouton droit pour ouvrir le menu contextuel, sélectionnez Refactor
puis Rename
Il vous sera demandé de refactoriser le package:
Ensuite, une fenêtre affichera les coïncidences à l'intérieur du projet, sélectionnez "Do Refactor"
:
Il n'est pas nécessaire de modifier manuellement les fichiers AndroidManifest.xml ou build.gradle, la refactorisation du package fera l'affaire!.
Si le nom de votre paquet est séparé par plus de deux points, dites com.hello.world
et, de plus, vous n’avez rien mis dans com/
et com/hello/
. Toutes vos classes mettent dans com/hello/world/
, vous pouvez effectuer les étapes suivantes pour refactoriser le nom de votre package dans Android Studio ou IntelliJ:
com/
, com/hello/
). Vous pouvez y parvenir en ajoutant d’abord deux fichiers au paquetage com.hello.world, par exemple:com.hello.world.PackageInfo1.Java com.hello.world.PackageInfo2.Java
puis refactorisez-les en les déplaçant respectivement vers com et hello. Vous verrez com et com.hello assis au niveau du projet (Alt+1
ou Command+1
pour le raccourci) et renommer les répertoires, le refactoring y est attendu comme prévu.
Refactoriser 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 paquets quand 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.
De plus, je suppose que vous devez renommer manuellement le nom du package dans le fichier AndroidManifest.xml, de sorte que les autres noms de ce fichier puissent bénéficier du préfixe.
[ALSO], vous devrez peut-être remplacer tous les com.hello.world.R
par le nouveau XXX.XXX.XXX.R
(Command+Shift+R
en abrégé)
Reconstruisez et exécutez votre projet pour voir s'il fonctionne. Et utilisez "Rechercher dans le chemin" pour rechercher d'autres noms non tactiles que vous souhaitez renommer.
J'ai trouvé une autre méthode qui fonctionne ou une étape supplémentaire pour certaines des réponses ici, en particulier si vous souhaitez également modifier le domaine. Cela fonctionne dans Android Studio 1.4. C'est ce que j'ai fait:
build.gradle
et modifiez l'identifiant de l'application dans defaultConfig avec le même nom que dans manifest, puis régénérez le projet.Ainsi, par exemple, si vous souhaitez renommer "com.example.app" en "com.YourDomain.app", ouvrez un fichier du package à renommer, dans la chapelure du package, définissez le curseur sur "exemple" du domaine. et frapper Shift + F6 et renommez le paquet en "YourDomain".
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...
J'ai trouvé une solution plus simple à ce problème qui modifiait également 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 Remplacer tout (Mac: cmd + Maj + R, Windows, je suppose: Ctrl + Maj + R). Tapez votre ancien nom de package et celui en dessous de 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 y a plus de 1000 résultats, cliquez simplement sur continuer.
Une fois que vous avez terminé, appuyez sur Remplacer tout pour remplacer votre ancien nom de paquet par votre nouveau.
Fermez maintenant Android Studio et accédez au Finder sous Mac ou à l'Explorateur Windows sous Windows. Changez le nom des dossiers en votre nouveau nom de paquet, comme ceci:
Ouvrez maintenant Android Studio. Gradle se synchronisera et le nom de votre paquet 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.
L'erreur commune que l'on peut commettre est de ne pas pouvoir renommer la structure du paquet, 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'obtenir le même changement souhaité, augmentez d'un niveau i.e com.name et, ici, modifiez-le lorsque renommé. Cela fonctionnera toujours.
Assurez-vous d'aller à La bonne réponse de Sheharyar . Il y a tellement de réponses et de commentaires qu'il est facile de se perdre et d'abandonner, mais ne le fait pas . Cette réponse fonctionne .
En bref, vous faites trois choses :
(1) Désélectionnez Compact Empty Middle Packages
.
(2) Refactor
puis Rename
chaque ancien nœud de répertoire en choisissant Change Package
( et non Change Directory
) pour correspondre au nouveau nom du package. (Assurez-vous de faire un aperçu des modifications.)
(3) Editez le fichier build.gradle
et faites correspondre APPLICATION_ID
au nouveau nom du paquet.
Faites un clic droit sur le paquet -> refactor et changez le nom.
Vous pouvez également le changer 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.
méthodes pour changer le nom du paquet dans Android Studio
Je pense que c'est un nouveau. J'ai essayé et ça marche. Si ci-dessus ne fonctionne pas pour vous. Essaye ça. Le site que j'ai mentionné ci-dessus, il existe 2 autres méthodes aussi avec tutoriel d'image. J'ai aussi vérifié.
Je vais d’abord parler de la modification du nom du paquet. Dans cet exemple, nous allons changer le nom du package “com.androidride.myapplication” en “info.xyz.yourapplication”.
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
.
J'ai essayé les deux solutions les plus votées, mais j'ai trouvé quelques problèmes même si les deux marchent 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 paquet, utilisez la méthode décrite par GreyBeardedGeek, à savoir
Cliquez avec le bouton droit sur le package dans la sous-fenêtre Projet. Choisissez Refactor -> Renommer 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 la sous-fenêtre 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, renommez-le en conséquence.
Notez également que vous devrez peut-être modifier les noms de package, par exemple. build.gradle, manifeste et/ou tout fichier de ressource XML, ou même dans votre code si codé en dur. Après tout cela, synchronisez/nettoyez/reconstruisez le projet si nécessaire.
Comment renommer com.example.app
en com.Android.app
:
dans le package com.example.app
sélectionnez un exemple
Shift + F6
choisissez rename package
renommer exemple en Android
confirmer do refactor
Moyen rapide et facile:
1- ouvrez MainActivity.Java
ou n’importe quel fichier Java disponible.
En haut se trouve la déclaration du paquetage telle que:
package com .
example
. myapp;
sélectionnez la partie du 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- Ouvrez AndroidManifest.xml
et dans la balise <manifest>
, remplacez package
par le nom de package souhaité.
3- Ouvrez build.gradle(Module: app)
et remplacez applicationId
par le nom de package souhaité.
La première partie consiste à créer un nouveau paquet sous le dossier Java
et à sélectionner puis faire glisser tous vos fichiers source du fichier old package
vers ce new package
. Après cela, vous devez remane
le nom du package dans Android manifest
au nom du nouveau package.
À l'étape 2, voici ce que vous devez faire. Vous devez modifier l'ancien nom du package dans applicationId
sous le module build.gradle
de votre studio Android, en plus de modifier le package. nom dans la manifest
. Donc, en résumé, cliquez sur build.gradle
qui se trouve sous "AndroidManifest.xml" et modifiez la valeur de applicationId
en fonction du nouveau nom de votre package.
Puis, tout en haut, sous build
. clean
votre projet, puis rebuild
. Ça devrait aller d'ici.
S'il vous plaît essayez les étapes suivantes:
******* Enfin c’est fait ******
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:)
Le meilleur moyen est d'écrire le nouveau nom du package et de le faire glisser depuis l'ancien nom.
La deuxième façon, si vous cliquez sur Refactor puis déplacez l’option puis renommez le nom du paquet, il renommera le nom du paquet puis se reconstruira.
Dans Build.gradle, vous devez le faire manuellement. Si vous refactorez, il ne sera pas renommé dans Build.gradle.
Terminé!
ctrl + Shift + R a toujours travaillé pour moi. Simplement replace all
et choisissez All Files
.
Presse Ctrl + Shift + R
Remplacez l'ancien paquet par le nouveau.
Faites un clic droit sur le nom du paquet.
Refactor
> Rename
et renommer le nouveau
Ceci, je crois que ce que vous recherchez est Refactor> Move. Vous pouvez également appuyer sur F6.
Vous aurez deux popups. Assurez-vous de sélectionner renommer le package sur les deux. Après cela, vous aurez une fenêtre contextuelle pour placer le nouveau nom du paquet.
Veuillez noter que si votre nom de package est, par exemple, com.example.Android.nomprojet, cela vous permettra de remplacer com.example.Android par un autre nom.
Une dernière chose, cela mettra également à jour l’applicationId dans votre build.gradle. Assurez-vous simplement que les cases "Rechercher dans les commentaires et les chaînes" et "Rechercher les occurrences de texte" sont cochées pour que cela fonctionne.
allez à AndroidManifest.xml Vous y trouverez package comme attribut de la balise manifeste. Il suffit de sélectionner la partie que vous souhaitez modifier, clic droit-> refactor -> renommer
Peut-être que c'était plus difficile auparavant, mais ce n'est plus le cas aujourd'hui.
Vous voudrez peut-être aussi changer l'identifiant de l'application dans
defaultConfig {
applicationId
}
Court & Doux
Les forfaits ont deux objectifs. L'une consiste à identifier votre application de manière unique dans le Google Play Store. L'autre consiste à nommer le package R.Java class
qui est généré lors de la génération de votre projet. Vous pouvez considérer le premier objectif comme le package externe et le second comme le package interne. En supposant que vous souhaitiez modifier le package externe pour pouvoir vous identifier dans le Play Store, il existe un moyen pratique de le faire.
Dans Android Studio,
_ choose File -> Project Structure -> Choose your app's module -> Click on the
Flavors tab -> change the Application id.
_
Désormais, lorsque vous générez votre projet, votre APK et votre manifeste utiliseront ce nouveau nom de package.
Clic droit sur le nom du paquet -> Refractor -> Renommer -> entrez le nom du paquet -> Cliquez sur “Refractor”. Ne modifiez aucun des fichiers de construction, à l'exception de "build.gradle" dans le dossier "app".
Pour renommer le nom du package dans Android studio, cliquez sur l'icône de configuration dans la section du projet et décochez la case Compacter les packages centraux vides, après quoi le package sera divisé en plusieurs noms de dossiers. puis faites un clic droit sur le dossier dont vous avez besoin pour changer le nom, cliquez sur refactor -> Renommer -> Tapez le nom que vous voulez changer -> Refactor -> Répertoire Refactor, puis importez le fichier R.Java dans l'ensemble du projet. Travailler pour moi.
Cela fonctionne très bien pour moi, même pour changer les occurrences, dans tous les modules concernés, pour les noms de dossiers que je veux modifier dans le package, mais, pour moi, cela fonctionne bien uniquement si je suis exactement les étapes suivantes:
Une fois que vous avez suivi l’une de ces techniques pour renommer votre paquet, vous pourriez commencer à voir des erreurs.
Si/quand votre R.Java n'est pas généré correctement, votre projet générera de nombreuses erreurs indiquant error: cannot find symbol class R
et aussi error: package R does not exist
.
N'oubliez pas de vérifier votre manifeste d'application xml. Le nom du paquet manifeste doit correspondre le nom du paquet réel. Il semble que R.Java est généré à partir du manifeste d'application et peut provoquer ces erreurs en cas de non concordance.
N'oubliez pas de vérifier les correspondances d'attribut package
dans votre <manifest package="com.yourcompany.coolapp">
Il existe également une bonne touche de raccourci clavier. Il suffit de cliquer sur n
et de sélectionner le Class / Package
que vous souhaitez renommer, puis appuyez sur ALT + deux fois R o Shift+ F6
qui reflète: ->Refactor
menu et Rename
fonction dans Android Studio. Après avoir renommé le paquet existant, il indique en bas où l’effet de ce reflection / rename
si vous cliquez sur le bouton Refector
il changera le Class name / Package name
où est utilisé dans tout le projet.
Si votre paquet commence par mypackageold.something.test
, vous ne pouvez pas passer à mypackagenew.somethingnew.testnew
.
Dans ce cas, si je suis les étapes de réponse acceptées ci-dessus, le résultat sera mypackageold.somethingnew.testnew
.
Seulement si votre paquet commence par com....
to Nouveau paquet, la réponse acceptée ci-dessus fonctionnera.
Donc, si vous voulez changer le paquet du niveau racine
build.gradle
et mettez à jour applicationId
.Il y a beaucoup de réponses données, mais je donne toujours mon procès ....
Étape 1: Comme indiqué dans la figure ci-dessus, sélectionnez Option de réglage ...
Étape 2: Sélectionnez l’option Compact Middle Packages ...
Étape 3: Maintenant développez le paquet comme indiqué
Étape 4: Après l’extension, cela ressemblera à quelque chose comme
Étape 5: Sélectionnez n’importe lequel du sous-package (dans ou exemple ou googledevsmsverify) et cliquez sur le bouton Maj + f6 ...
J'ai sélectionné le package central , par exemple afin qu'il s'affiche comme ci-dessus fig. Renommez simplement le package et cliquez sur le bouton de refactorisation
Étape 6: vous verrez l’écran suivant après avoir cliqué sur le bouton Refactor, cliquez sur le DO Refactor et attendez que le build gradle soit créé ...
Étape 7: Allez à build.gradle (Mobile: app) et modifiez le nom du package de applicationID comme indiqué
Étape 8: Il suffit de vérifier le package dans le fichier manifest.xml ...
Tout est fait, le paquet est changé ... @ Ambilpura
J'avais besoin d'exécuter Fichier-> Invalider les caches/redémarrer ... pour supprimer les restes du paquet d'origine
par exemple, si vous souhaitez modifier le package de com.example.a à com.example.b
1) changer le dossier du style de projet de Android en package (côté projet)
2) cliquez avec le bouton droit sur le haut du dossier et cliquez sur remplacer dans le chemin
3) sélectionner dans le bouton de projet
4) en première entrée, écrivez com.example.a
5) dans la deuxième entrée, écrivez com.example.b
6) lorsque vous voyez un avertissement, sélectionnez Remplacer tout pour remplacer la valeur.
après avoir terminé, vous pouvez voir que le nom de votre paquet est com.example.b
Accédez à votre AndroidManifest.xml
C'est travaillé pour moi