如何在基于IntelliJ IDEA的新IDE Android Studio中重命名软件包?
是否包含自动重构?
我想进行大规模重构,但我不知道怎么做。我在Eclipse工作了两年,在Eclipse中它是一个一键操作。
如何在基于IntelliJ IDEA的新IDE Android Studio中重命名软件包?
是否包含自动重构?
我想进行大规模重构,但我不知道怎么做。我在Eclipse工作了两年,在Eclipse中它是一个一键操作。
当前回答
ctrl+Shift+R一直对我有效。只需替换所有文件并选择所有文件。
其他回答
如果重命名的唯一原因是避免与具有相同包名的另一个构建(或系统应用程序)发生冲突,那么您可以改为仅重命名应用程序build.gradle文件中的applicationId。
示例:假设您已经安装了一个id为com.android.phone的应用程序(您希望保留它),请将app/build.gradle更改为:
android {
defaultConfig {
applicationId "com.android.phone.mymod"
}
也就是说,如果你已经有一个软件包名为com.android.phone的应用程序,并且不想/无法卸载它(例如,因为它是一个系统应用程序,设备没有根目录),那么上面的更改就是所有需要的,以便将你的应用程序与原始应用程序并排安装。在设备上,applicationId将被使用,而不是实际的包名。此外,您的应用程序数据将存储在/data/data/com.android.phone.mymod下,而不是/data/ddata/com.andrid.phone下。
没有。在某些情况下,您可能还需要重命名AndroidManifest.xml文件中的提供者和权限的名称。
参考:
https://developer.android.com/studio/build/application-id
在AndroidStudio中创建新项目时,applicationId与安装过程中选择的Java风格包名称完全匹配。但是,应用程序ID和包名称在此之外彼此独立。您可以更改代码的包名称(代码名称空间),这不会影响应用程序ID,反之亦然(不过,再次声明,发布应用程序后,您不应更改应用程序ID)。但是,更改包名还有其他后果,您应该注意,因此请参阅有关如何更改包名的部分。
选择选项取消选中“压缩空中间包”选项。选择要更改的目录(我选择了步骤6中显示的“crl”)。移位+F6重命名程序包将目录crl重命名为crl1最后单击下图中标记的Do Refactor按钮在此处输入代码完成更改后
右键单击包名称->Refactor->重命名->输入包名称->单击“Refactor”。不要编辑“app”文件夹下除“build.gradle”以外的任何构建文件。
从重命名android工作室项目-Vishnu Sivan
更改应用程序ID(现在独立于包名)可以在一个步骤中轻松完成。你不必接触AndroidManifest。相反,请执行以下操作:
右键单击项目的根文件夹。单击“打开模块设置”。转到“口味”选项卡。将applicationID更改为所需的任何包名称。按OK(确定)。
注意,这不会更改包名称。包名称和应用程序ID的解耦在这里解释:http://tools.android.com/tech-docs/new-build-system/applicationid-vs-packagename
右键单击项目面板上的包。
从上下文菜单中选择Refactor->Rename。