在Android Studio中重命名包

1732

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

是否包含自动重构功能?

我想进行批量重构,但不知道如何操作。我曾在Eclipse中工作了两年,在Eclipse中这是一次单击操作。


请在此处查看我的答案:这里。我已成功按照我所描述的步骤重新命名了我的项目。 - Leigh
可能是重复的问题:在Android Studio上更改项目名称 - Leigh
更改包名的逐步过程...https://stackoverflow.com/a/46945668/6915572 - Shubhamhackz
Sheharyar的答案按预期工作。即1.重构2.编辑build.gradle。但是,您还必须跟进在strings.xml文件中更改app_name属性! - user8066636
55个回答

7
我发现了另一种方法,可以在某些答案中添加额外的步骤,特别是如果您想要更改域名。它适用于Android Studio 1.4。这是我所做的:
  1. 打开Manifest.xml,并将软件包名称更改为您想要的名称。
  2. 打开应用程序的build.gradle文件,并将defaultConfig中的Application Id更改为与清单中相同的名称,然后重新构建项目。
  3. 如果仍然存在问题,请打开软件包名称下的文件,在软件包面包屑导航(即文件头的软件包声明)中将光标设置为要更改的域名,然后按“Shift + F6”,它会出现一个带有多个使用警告的对话框,单击“重命名软件包”,然后单击“执行重构”,它应该重命名所有内容,包括R.Java文件。
例如,如果您想将“com.example.app”重命名为“com.YourDomain.app”,请在要重命名的软件包下打开文件,在软件包面包屑导航中将光标设置为域名的“example”部分,然后按Shift + F6并将软件包重命名为“YourDomain”。

7

我尝试了两个得票最高的解决方案,但发现两者都存在问题,尽管它们在某种程度上都能工作。

  • 列表项:新的包拖放方法会使一些内容保持不变,并创建一些不希望出现的效果
  • 列表项:重命名包仅更改包名称的最后部分

经过一些实验,我发现以下方法适合我。

如果您只需要更改包名称的最后一部分,请使用GreyBeardedGeek提供的方法:

右键单击项目窗格中的包。从上下文菜单中选择“重构 -> 重命名”

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

右键单击项目窗格中的包。从上下文菜单中选择“重构 -> 移动”

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

还要注意,您可能需要修改例如build.gradle,manifest和/或任何xml资源文件中的包名称,甚至是硬编码的代码中的包名称。完成所有这些操作后,根据需要执行Sync/Clean/Rebuild项目。


6

更新的答案:2015年5月

好的,我一直在努力学习如何在Android Studio中克隆和重命名项目,最终我成功了。以下是需要遵循的步骤:

  1. 复制项目文件夹,将其重命名并使用Android Studio打开
  2. 从资源管理器中重命名模块目录
  3. 重命名projectName.iml和content
  4. 重命名idea/.name中的内容
  5. 在您的项目面板中,单击小齿轮图标 ->取消选中“紧凑空的中间包”
  6. 为新的包名称重构src目录(重命名包,“不要重命名目录”)
  7. 在build.gradle中重命名应用程序ID
  8. 在settings.gradle中重命名模块

就是这样...


6

如何将com.example.app重命名为com.android.app

  1. 在包com.example.app中选择示例

  2. Shift + F6

  3. 选择重命名包

  4. 将示例重命名为android

  5. 确认进行重构


6
  • 首先,您需要在 java 文件夹下创建一个新的包,并将所有源文件从旧包拖到这个新包中。之后,您需要将android manifest中的包名更改为新包名。

  • 第二步中,您需要做以下操作。您需要更改build.gradle模块中applicationId下的旧包名称,在manifest中更改包名称。总之,点击下面的"AndroidManifest.xml"中的build.gradle,将applicationId的值修改为新的包名称。

  • 然后,在build下方,使用clean清理您的项目,然后使用rebuild重新构建即可。


6
最好的方法是编写新的包名并从旧的包名中拖动。
第二种方法是,如果您点击“重构”,然后移动选项,然后重命名包名称,它将重命名包名称,然后重新构建。
在Build.gradle文件中,您必须手动进行更改,如果您进行重构,则不会在Build.gradle文件中更名。

6

右键点击包->重构并更改名称。

您还可以在清单中更改它。有时,如果您更改了包名称,但创建.apk文件后显示不同的包名称,则在此时检查build.gradle文件中的"applicationId"。


6
我建议使用Sublime Text(或Notepad++)进行编辑。在...\Projects[MyProject]中将com.one.lastname替换为com.two.newname,com/one/lastname替换为com/two/newname。别忘了重命名...\Projects\MyProject\app\src\main\java\com\one\lastname、...\Projects\MyProject\app\src\test\java\com\one\lastname和...\Projects\MyProject\app\src\androidTest\java\com\one\lastname!这就是全部 :)

Screenshot


5
有很多答案,但还是我来试一下。
步骤1: 如上图所示,选择“设置”选项... enter image description here 步骤2: 选择“紧凑的中间包”选项... enter image description here 步骤3: 现在展开包如下所示 enter image description here 步骤4: 展开后会看起来像这样 enter image description here 步骤5: 选择其中任何一个子包(例子或googledevsmsverify)并点击Shift+f6按钮... enter image description here 我选择了中间包example,所以它会显示如上图所示, 简单地更改包名并点击重构按钮 enter image description here 步骤6: 点击重构按钮后,您将看到以下屏幕,请点击“DO Refactor”并等待gradle构建... enter image description here 步骤7: 进入build.gradle(Mobile:app)并将applicationID的包名更改如下 enter image description here 步骤8: 只需在manifest.xml文件中检查包... enter image description here 全部完成,包已更改...@Ambilpura

5

有两个东西 - 包名和应用程序ID。

对我来说,最简单、最令人满意的方式是这样的,

enter image description here

你能看到高亮的线条“vijayjangid”,之前是“example”。 我所做的只是使用重构功能将example重命名,而Android Studio则完成了所有工作。
第一部分完成。
现在将defaultConfig括号中的应用程序ID重命名为与您重命名example文件夹的名称相同。确保在云服务(如Firebase、AWS、Realm等)中重命名包名称和ID。
就这样,你完成了,最受欢迎的答案已经过时了,我们需要更新答案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接