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

是否包含自动重构?

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


当前回答

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

其他回答

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

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

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

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

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

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

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

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

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

这很容易做到。只需遵循两个步骤:

右键单击根文件夹,然后单击打开的模块设置。之后,转到口味选项卡并根据需要更改应用程序id。

对于那些认为这只会更改build.gradle文件中的应用程序id的人:

这是谷歌写的

在build.apk的清单中使用的最后一个包是“应用程序id”,它是您的应用程序在设备和Google Play商店中的名称。

and

源代码中用于引用R类和解析任何相关活动/服务注册的包继续称为“包”。

您可以阅读更多http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename

快速简便的方法,分为3个步骤:

1-打开MainActivity或任何其他java或Kotlin文件。

顶部有包装声明,如:

包com.example.myapp;

选择要更改的包装部分,然后按Shift+F6。我个人想改变这个例子。

在警告对话框中,选择重命名包,然后插入所需的包名称。

2-打开AndroidManifest.xml,并在<manifest>标记内将包更改为所需的包名称。

3-打开build.gradle(模块:app)并将applicationId更改为所需的包名。

ctrl+Shift+R一直对我有效。只需替换所有文件并选择所有文件。

还有一个很好的键盘快捷键,只需单击n选择要重命名的类/包,然后按ALT+两次R或Shift+F6

它反映了Android Studio中的:->Refactor菜单和Rename功能。重命名现有包后,它会在底部显示此反射/重命名的效果,如果您单击Refector按钮,它将更改整个项目中使用的类名/包名。