如何在基于IntelliJ IDEA的新IDE Android Studio中重命名软件包?

是否包含自动重构?

我想进行大规模重构,但我不知道怎么做。我在Eclipse工作了两年,在Eclipse中它是一个一键操作。


当前回答

如果您的包以mypackageold.something.test开头,则不能更改为mypackagenew.somethingnew.testnew。

在这种情况下,如果我按照上面接受的回答步骤,结果将是mypackageold.something.testnew。

只有当您的包以com….to New包开头时,上述接受的答案才有效。

因此,如果您想从根级别更改包

更改清单中的Required包名称,移除旧软件包并在Android标签下装入新软件包,将所有文件从旧包拖到新包,在Manifest中,还可以更改这些文件的包名,清洁项目,打开build.gradle并更新applicationId。

其他回答

我看过最热门的答案,但我发现这样做有点不同,我尝试做最完整的教程。

在Android Studio中,单击齿轮图标(),然后选择选项:“压缩空中间包”,以在树视图中查看分开的文件夹。

现在选择文件夹,单击右键打开上下文菜单,选择Refactor,然后重命名

建议您重构包:

然后一个窗口将显示项目内的巧合,选择“Do Refactor”:

我们不必手动更改AndroidManifest.xml或build.gradle文件,重构包就可以了!。

选择要重构的包。重构(Refactor)→ 移动→ “将xxx移动到新包”。

我需要运行文件->使缓存无效/重新启动。。。清除原始包装的残留物

我尝试了两个最热门的解决方案,但发现了一些问题,尽管这两个方案在某种程度上都有效。

列表项:新的包拖放方法保持一些不变,并产生一些不希望的效果列表项:重命名包仅更改包名称的最后一部分

经过一些实验,我发现下面的方法对我很有效。

如果您只需要更改包名的最后一部分,请使用GreyBeardedGeek概述的方法,即

右键单击“项目”窗格中的包。从上下文菜单中选择Refactor->Rename

如果需要更改整个包名,请执行以下操作。

右键单击“项目”窗格中的包。从上下文菜单中选择Refactor->Move

这将创建一个新的包文件夹(必要时),但将保留包名称的最后一部分。如果需要更改最后一个零件,请相应地进行重命名。

还请注意,您可能需要修改例如build.gradle、manifest和/或任何xml资源文件中的包名,甚至需要修改硬编码的代码中的包名称。之后,根据需要执行同步/清理/重建项目。

要在Android studio中重命名包名,请单击项目部分中的设置图标并取消选中压缩空中间包,然后包将拆分为多个文件夹名,然后右键单击需要更改名称的文件夹,单击refactor->rename->Type the name you want To change in->refactor-->refactor Directory,然后在整个项目中导入R.java文件。为我工作。