Android Studio 中的重构/重命名包名称无法正常工作

Rob*_*bbB 7 android android-studio intellij-14

首先,我感谢无数关于重构包名称的帖子。我研究了其中的许多答案,但没有一个答案对我有用......我想知道是否还有其他人遇到过这样的问题,或者是否有人知道如何解决这个问题。

这是我尝试过的,几乎所有这些线程以及此处未包含的其他线程中的所有不同变体答案:

在 Android Studio 中重命名包

在 Android Studio 中重构包名称

如何重命名android包名称?

当我创建我的项目时,我比现在更绿草,所以就以我的名字命名了公司。现在我即将启动我的应用程序,我意识到将我的名字作为包名称“公司”显然不像我的公司那样优雅和专业。所以我尝试重构包名称,如下所示:

当前 = 第一个最后一个.应用程序名称

重命名 = com.公司名称.应用程序名称

我遇到的问题:我尝试通过实际重构进行重构,而 IntelliJ 实际上并没有重构所有内容,我更改了清单和 gradle 中的包名称,但仍然不起作用。然后更糟糕的是,清理完所有错误后,项目目录中会随机弹出带有旧包名称的新包,我将其删除,然后又弹出更多包。我再次删除这些文件,最后只剩下新的包目录,但是,我清理并重建并且没有收到任何错误,但是当我尝试启动时,我得到: 在项目或库中找不到清单中引用的类,一些相关的内容到 dex...我追踪并修复这些错误,但一无所获。此时我的项目已经搞砸了,我考虑删除它并使用备份......相反,我使用历史记录来回到过去......

我还尝试创建一个新包,并将所有类和文件移动到新创建的包中,并删除旧的包,但这有它自己的蠕虫,看起来比上面的更混乱。

我很困惑为什么这不简单。任何帮助深表感谢!

编辑:可能的“绕行”

我正在查看这个文档:

https://developer.android.com/studio/build/application-id.html

我使用以下指令重命名应用程序 ID:

更改应用程序 ID(现在与包名称无关)可以非常轻松地一步完成。您不必接触 AndroidManifest。相反,请执行以下操作:右键单击项目的根文件夹。单击“打开模块设置”。转到“风味”选项卡。将 applicationID 更改为您想要的任何包名称。按确定。

正如在这里找到的:

在 Android Studio 中重命名包

所以我想知道,(新问题,仅相关问题)如果我像在这里那样重命名应用程序 ID 并且它仅在 gradle 构建文件中更改,这是否也适用于我的应用程序包名称以提交到应用程序商店作为共享应用程序?或者我是否需要完全重构包?

Sye*_*ain 13

首先,您必须在 java 包下创建所需的包名称。在 java 下创建所需的包名称后,您必须选择所有类、包和活动并将它们放入新包中。您可以通过选择所有文件并将它们剪切并粘贴到新文件中以及选择并拖放到新包中来完成此操作。我认为拖放是最有效的方法。Delete the text and AndroidTest package under the src folder these folders are auto-generated and they will auto-generated when the new package name is created.

在此输入图像描述

其次,转到 build.gradle(应用程序),然后选择应用程序 ID

在此输入图像描述

选择后按Ctrl+ Shift+r然后会出现此屏幕

在此输入图像描述

添加新包名称后,您必须单击“全部替换”按钮,该按钮将用新包名称替换所有旧包名称,然后同步 build.gradle