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

是否包含自动重构?

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


当前回答

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

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

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

建议您重构包:

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

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

其他回答

首先,您需要转到左侧显示的设置图标。单击该下拉列表并取消选中压缩空中间包

转到AndroidManifest.xml

选择所有包,然后右键单击重构,然后根据需要重命名。然后转到build.gradle,然后使用Android Manifest中的packagename更改Applicationid。

这对我来说很有效

选择选项取消选中“压缩空中间包”选项。选择要更改的目录(我选择了步骤6中显示的“crl”)。移位+F6重命名程序包将目录crl重命名为crl1最后单击下图中标记的Do Refactor按钮在此处输入代码完成更改后

我用于重命名包名称的方法如下:-

步骤1:从Android Studio的左侧菜单中选择项目选项

步骤2:右键单击java并添加一个新包并设置所需的包名称

步骤3:输入新程序包名称

步骤4:从旧包复制所有文件并粘贴到新包中

步骤5:重命名清单文件中的包名称

步骤6:重命名build.gradle文件中的包名

步骤7:然后右键单击旧包并删除它及其所有数据,同时删除该目录

步骤8:然后重建项目

步骤9:然后您将在项目中发现旧导入包名的一些错误在任何文件中选择旧包名,然后按CTRL+Shift+R,然后在替换框中输入新包名,再按find

步骤10:然后出现如下弹出窗口,并从中选择“所有文件”选项

步骤11:再次重建项目,宾果您的项目包名已更改:)

如果重命名的唯一原因是避免与具有相同包名的另一个构建(或系统应用程序)发生冲突,那么您可以改为仅重命名应用程序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)。但是,更改包名还有其他后果,您应该注意,因此请参阅有关如何更改包名的部分。

打开文件:应用程序→ 舱单→ AndroidManifest.xml突出显示要修改的包名称中的每个部分(不要突出显示整个包名称),然后:鼠标右键单击→ 重构(Refactor)→ 重命名→ 重命名程序包键入新名称并按(Refactor)在包名称的每个部分执行这些步骤。打开(Gradle脚本)>>(build.Gradle(Modul:app))并将applicationId更新为包名打开菜单(构建)并选择(重建项目)。