假设这是包名:
package com.company.name
. 我该如何改变company
?
PS我看到了如何改变name
但没有company
。我正在使用安卓工作室。
假设这是包名:
package com.company.name
. 我该如何改变company
?
PS我看到了如何改变name
但没有company
。我正在使用安卓工作室。
当前包:com.company.name
新包:com.mycomapny.name
步骤: 1) 假设您在如下图所示的屏幕上。
2) 打开项目窗格并单击设置图标。
3) 取消选择紧凑的空中间包。
4)然后您的包裹现在被分成几个单独的部分,如下所示。
5)右键单击“公司”选择重构->选择重命名->重命名目录。
6)现在您的“公司”已更改为新的“mycomapny”,更改如下图所示。
7) 现在更改 AndroidManifest.xml 文件中的包名。
8) 打开应用级 build.gradle 并更改包名。
9) 您将收到无法解析符号 "R" 的错误。
10)删除给出此错误的行,工作室将自动导入新的 R 文件。
11) 如果您有多个文件,请按“Cntrl+Shift+R”使用查找和替换选项
或“选择编辑->查找->替换路径..”
12) 选择全部替换。
你可以这样做:
在清单文件中手动更改包名称。单击您的 R.java 类并按 F6(重构->移动...)。它将允许您将类移动到其他包,并且对该类的所有引用都将被更新。
这对我有用,来自https://stackoverflow.com/a/18637004/127434
另一个好方法是:首先通过右键单击java文件夹->新建->包来创建一个具有所需名称的新包。
然后,选择所有类并将其拖到新包中。AndroidStudio 将在任何地方重构包名。
最后,删除旧包。
如果您只想重命名 App 包,@Luch Filip 的解决方案效果很好。就我而言,我也想重命名源包,以免混淆。
只需要2个步骤:
单击您的源文件夹,例如com.company.example
> Shift + F6 (Refactor->Rename...) > Rename Package > 输入您想要的名称。
转到您的 AndroidManifest.xml,单击您的包名称 > Shift + F6 (Refactor-> Rename...) > 输入与上面相同的名称。
第 1 步将自动重命名您的 R.java 文件夹,您可以立即构建。
我已经阅读了几乎所有的答案。但我认为缺少一个。有时我可能是错的。我使用了以下方法并且它正在工作。
1) 在 Android Studio 中打开项目文件夹。
2) 选择 app 文件夹 -> 右键单击,然后选择refactor。
3) 点击移动。它会询问您拥有哪个包名类型的完整包名,它会要求创建一个新包,是的,它会自动创建新的gradle
包sync
。
在Android studio中重命名包名,点击项目部分的设置图标,取消勾选Compact empty Middle Packages,之后包会拆分成多个文件夹名,然后在需要改名的文件夹上右击,点击refactor->Rename->在里面输入你要改的名字->Refactor->Refactor Directory,然后在整个项目中导入R.java文件。为我工作。
如果你的公司域名/包名很长,那就比较麻烦了。
这是我缺少的链接。您需要选择项目文件 -> 设置 -> 然后取消选中“压缩空中间类”。
在我的情况下,当我按照规定将 MainActivity 文件移动到新的包文件夹结构时......它重构了我的 AndroidManifest.xml。最后在检查了 Logcat 之后,我意识到这是问题所在,并将其从“.MainActivity”重命名为“.MainActivity”
<activity
android:name=".MainActivity"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
Android Studio 的重构方法搞砸了。所以我手动做了,效果很好。也很简单:
- 备份,以便在出现问题时恢复。
- 在 Android Studio 中:打开 Replace In Files,输入要替换为新的旧包名,然后 git replace all。
- 关闭 Android Studio。
- 手动重命名 app/src/main/java/... 和 app/src/test/java/... 和 app/src/androidTest/java/... 中的目录
- 打开 Android Studio 和清理项目,重建项目 -> 完成!
我没有更改任何包名称。以下两个步骤对我有用。执行以下操作后,应用程序被安装为 NEW one ,尽管有两个应用程序具有相同的包名称。
1) 在 build.gradle
应用程序ID“mynew.mynewpackage.com”
2)在AndroidManifest.xml android:authorities="mynew.mynewpackage.com.fileprovider"
我也遇到了同样的问题,这就是我的解决方法:-
我想将包名np.com.shivakrstha.userlog更改为np.edu.khec.userlog
我选择了 shivakrstha并按下Shift + F6进行 Rename Refract 并重命名为khec。
最后,在AndroidManifest.xml中使用相同的包名,在build.gradle中使用 applicationId并且不要忘记Rebuild Your Project。
注意:- 我尝试将np更改为jp,因此我选择了np并按下Shift + F6进行Rename Refract 并重命名为jp,也可以更改其他人。
我在整个项目中找到了另一种重命名包的解决方案:
打开包中的文件。IntelliJ 在打开的文件上方显示文件的面包屑。在要重命名的包上:右键单击 > 重构 > 重命名。这会在整个项目中重命名包/目录。
执行此操作的最简单方法是将根应用程序文件夹从 to 重命名com.example.MyApp
,com.newcompanyname.MyNewAppName
然后在您使用的任何 IDE 中将所有出现的旧路径替换为新路径。
嗨,我找到了最简单的方法。
完毕!