如何在基于IntelliJ IDEA的新IDE Android Studio中重命名软件包?
是否包含自动重构?
我想进行大规模重构,但我不知道怎么做。我在Eclipse工作了两年,在Eclipse中它是一个一键操作。
如何在基于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。
其他回答
选择要重构的包。重构(Refactor)→ 移动→ “将xxx移动到新包”。
例如,如果您希望将包从com.example.a更改为com.example.b
1) 将项目样式文件夹从android更改为package(在项目端)
2) 右键单击文件夹顶部,然后单击路径中的替换
3) “在项目中选择”按钮
4) 在第一输入write com.example.a
5) 在第二输入中写入com.example.b
6) 当您看到警告时,选择“全部替换”以替换值
完成替换后,您可以看到您的包名为com.example.b
如果重命名的唯一原因是避免与具有相同包名的另一个构建(或系统应用程序)发生冲突,那么您可以改为仅重命名应用程序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)。但是,更改包名还有其他后果,您应该注意,因此请参阅有关如何更改包名的部分。
我也很难更改项目的包名。特别是大型项目。有很多事情要做,但这些工作真的很无聊。我一直在IntelliJ IDEA和Android Studio上开发插件。它将帮助您自动更改软件包名称。它叫做Android软件包重命名器
安装
使用IDE内置插件系统:设置/首选项>插件>市场>搜索“Android软件包重命名器”>安装插件手动:下载最新版本并使用手动安装设置/首选项>插件>⚙️ > 从磁盘安装插件。。。
用法
打开项目。单击->文件->重命名包输入要更改的程序包。单击“确定”。将项目与渐变文件同步或使缓存无效
如果此插件对您有帮助或有错误,请通过以下[GitHub]与我联系(
在Android Studio中,您可以执行以下操作:
例如,如果要将com.example.app更改为my.awesome.game,则:
在项目面板中,单击小齿轮图标()取消选中“压缩空中间包”选项您的程序包目录现在将被分解为单独的目录单独选择要重命名的每个目录,然后:
右键单击它选择重构单击重命名在弹出对话框中,单击重命名包而不是重命名目录输入新名称并点击Refactor单击底部的Do Refactor留出一分钟让Android Studio更新所有更改注意:在Android Studio中重命名com时,可能会发出警告。在这种情况下,选择“全部重命名”
现在打开Gradle Build文件(Build.Gradle-通常是应用程序或手机)。如果尚未自动更新,请将defaultConfig中的applicationId更新为新的Package Name和Sync Gradle:您可能需要更改清单中的package=属性。清洁并重建。完成!无论如何,Android Studio需要让这个过程简单一点。