我如何重命名Android包名称?
按Shift + F6似乎只重命名最后一个目录。 例如,在项目com.example.test中,它将提供仅重命名testing。 如果我在.java或Manifest文件中导航到软件包名称并按下Shift + F6,也是如此。
你可以这样做:
- 在清单文件中手动更改软件包名称。
- 点击
R.java
类,然后按F6 ( Refactor-> Move … )。 它将允许您将该类移动到另一个包,并且该类的所有引用都将被更新。
解决这个问题的最好方法是去AndroidManifest.xml: package="com.foocomp.fooapp
:
- 将光标设置为“foocomp”
- 按下Shift + F6
- 重命名包到任何你想要的
- 重复“fooapp ”。
为我工作。
另外,在整个项目中更换path,因为它并没有改变一切。 然后清理,重build,它的工作原理 – >在Android Studio / IntelliJ中,您应该取消“Compact Empty Middle Packages”
Eclipse:右键单击项目> Android工具>重命名应用程序包。
就如此容易…
在Android Studio中:打开build.gradle文件>在defaultConfig> synchronize下重命名applicationId
- 转到你的AndroidManifest.xml。
- 将光标置于下面显示的包名称中, 不要选中它就放置它。
- 然后按
shift+F6
你会得到一个popup窗口,如下所示select重命名包 。
- input您的新名称,然后select重构 。 (注意,因为我的光标在“某些东西”只有东西被重命名。)
就这样完成了。
我发现了另一个在整个项目中重命名软件包的解决scheme:
- 打开包中的文件。
- IntelliJ在打开的文件上方显示文件的面包屑。
- 在要重命名的包上:右键单击>重构>重命名。
这在整个项目中重命名包/目录。
在项目浏览器的Windows设置菜单中取消select隐藏空白中间包,你将能够重构每个目录
让我们解决这两个用例
**重新命名包名或修剪包**
com.mycompany.mystupidapplicationname改为com.mycompany.brandname
要么
com.someothercompany.mystupidapplicationname到com.someothercompany.mystupidapplicationname
要么
com.someothercompany.mystupidapplicationname to someothercompany.brandname
- 在Android Studio的下拉菜单中selectPackage
- 右键单击包含MainActivity的折叠包
- select重命名包,一切都将像一个魅力
但是这只会重命名包名的最后一部分
- 重命名软件包名称的第一部分或第二部分。 在要重命名的包的一部分中创build一个新的虚拟文件。 该文件将在mycompany.com.myapplicationame内创build。 然后移动mycompany中的文件(右键单击=>移动),使mycompany显示在树视图中。 这将使树视图的一部分,你会帮助你做一个右击并重命名该部分。
-
删除虚拟文件
-
要修改一个包,只需右键单击并将该包部件移到其父级中
我发现这个问题很好。 以问题中提到的示例为例,以下是将包名称从com.example.test
更改为com.example2.test
:
- 创build一个临时目录,比如目录
example
的临时目录(与目录test
一起)。 - 回到Intellij项目,select文件夹
com.example
并点击Shift + F6
。 现在它提供重命名文本example
。 在这里你可以input你想要的新文本,IntelliJ将为你完成剩下的工作。 - 从文件系统中删除临时目录
temp
。
这个想法可以用来重构软件包名称的任何部分。
祝你好运!!
此修改需要三个步骤:
- 更改清单中的软件包名称
- 重构你的包的名称,右键单击 – >重构 – >在树视图中重命名,然后Android studio会显示一个窗口,select“重命名包”
- 手动更改build.gradle文件中的应用程序Id:android / defaultconfig / application ID
然后清理/重build项目
我所做的是以下几点:
我只是用当前名称在当前包旁边的src文件夹中创build了具有所需名称的包。
我将当前包的所有内容拖到新包中,intellijpopup一个对话框询问我是否想重新包装内部包引用和项目引用到新包,我点击“是”和TA-DAAA,像魅力一样工作。
在Android Studio 1.1中,最简单的方法是打开项目清单文件,然后指向要更改的包名称的每个部分,然后按SHIFT + F6,然后select“重命名包”,并将新名称写入对话框。 就这样。
大多数答案即使是最多的答案也没有做好工作,他们似乎工作,而构build工作,但仔细看看文件结构和参考文献将告诉你,没有太多的工作。 IntelliJ实际上自动完成了这个过程。
1)转到“项目”选项卡,并确保包是下拉菜单中的活动选项卡,如下所示:
find你的com.example包(注意testing在com.example.test不存在)右键单击并select重构 – >重命名…
它会发出警告,多个目录…(这实际上是所需的效果),点击重命名包。
input新的软件包名称和重构…
它会做search,并显示重构结果。
点击Do Refactorbutton,它会做所有的事情,甚至重命名涉及的文件夹和文件…每一个引用被更正为这个新名称。
2)然后,最后更改AndroidManifest.xml文件
🙂
大多数答案即使是最多的答案也没有做好工作,他们似乎工作,而构build工作,但仔细看看文件结构和参考文献将告诉你,没有太多的工作。 IntelliJ实际上自动完成了这个过程。
我通过从命令行手动更改目录名称来解决此问题。 然后Intellij自动识别新的软件包名称。 然后,我必须进行search,并replace每个导入它的文件中的软件包名称。 这似乎是一个丑陋的解决方法,但Intellij似乎不愿意改变软件包的名称,否则。
我做的是以下
- 更改清单。
- closuresandroidStudio
- 用Windows资源pipe理器打开文件夹 更改文件夹名称。
- 打开androidStudio,并进行search和replace。
完成!
如果你想重命名完整的Android软件包,这是做到这一点的最好方法:
-
标记为已选 – Comapct Emty Middle Packages
-
右键单击要更改的包装盒,然后单击重构 – >重命名 – >重命名全部
您可以在此链接中findvideo教程: https : //www.youtube.com/watch?v = A-rityZQj0A
不幸的是,以上所有都不适合我。 在进行了大量的试用之后,Android Studio中对我有用的东西:
-
在包上做一个'移动'到你想要的新的包名(右键单击包并select重构 – >移动)如果重构 – >移动不适合你,那么创build一个你想要的包在现有的包中手动移动到新的包,然后删除旧的空包。
-
在清单中更改软件包名称(手动)
- 用全新的软件包名称replace旧的软件包名称(在完整path中,通过编辑 – >查找 – >replacepath)
除了@克里斯蒂安的回答上面,我不得不再做两个步骤才能正常工作。 我将在这里总结一下:
- 在清单文件中手动更改软件包名称。
- 点击
R.java
类,然后按F6
(Refactor-> Move …)。 它将允许您将该类移动到另一个包,并且该类的所有引用都将被更新。 - 手动更改
build.gradle
文件中的应用程序ID:android / defaultconfig / application ID [source] 。 - 通过右键单击java文件夹 – >新build – >包创build一个具有所需名称的新包,然后select并拖动所有类到新包。 Android Studio将在任何地方重构包名称[source] 。
解决scheme1:我更改了src子文件夹名称,清单文件,活动标题和运行/debuggingconfiguration。 而且还有构build错误。 如果您的项目不是那么大,只需创build一个新项目,复制粘贴旧文件,并在.java文件和Android清单的头文件中更改软件包名称。
解决scheme2:在IntelliJ 12里面,转到someFile.java并find你的旧包名
package com.myself.project2
点击要更改的单词。 按下Shift + F6 。
对话框来,input新的名字。
然后转到运行/编辑configuration。 里面启动单选button更改包名称为新的。 它应该工作。
IntelliJ的其他重命名选项是: http : //www.jetbrains.com/idea/webhelp/rename-refactorings.html
超级简单的方法:
- 在build / generated目录中find
R.java
- 创build新的包目录,再次build立/生成/等
- 将
R.java
移到新创build的包中。 - 会出现一个对话框。 select用新的软件包名称重构现有的代码。
- 清洁和重build
完成!
不要做任何事情,只要去你的清单文件。 你会看到android:label =“@ string / app_name”如果不只是添加这个。