如何在 Eclipse 中更改 Android 项目的包名称?

我有一个在 日食中创建的 Android 项目。我想修改包的名称和项目的应用程序。在 Eclipse 中如何做到这一点?

122886 次浏览

F2,然后重命名它(或者右键单击项目并选择 Rename)。只要在项目中声明了该包,它就会发生变化。到处都会自动重命名。

像往常一样,通过在包名上按 F2,您可以重命名或更改包名,也可以通过右键单击然后选择 Rename选项,您可以更改或重命名包名。

当您按 F2时,它将显示如下对话框:

Alt text

在这个对话框中,不要忘记选中“ Update reference”复选框,因为通过对这个复选框进行“ check”,它将对包的所有引用进行更改,这些引用是由项目的其他组件引用的。

进入 Android 项目的 Src文件夹,打开 Java 文件。

将包 OldName.android.widget更改为 newName.android.widget

它会给你一个这样的错误

声明的包“ newName.android.widget”与预期的包“ OLDName.android.widget”不匹配。

要修复此问题,请选择 移动文件名.Java 到 Newname.android.widget并删除旧的包文件夹。

下一步: 转到 AndroidManifest.xml并更改 package="OldName.android.widget"呼叫 package="newName.android.widget"

这是 Eclipse Android 工具中的一个 bug

要修复: 右键单击项目,转到 Android tools-> Rename application package。

还要检查 AndroidManifest.xml是否更新正确。在我的情况下,它没有,这应该解决这个问题。

只要找到 Far Manager然后搜索原来的名字。然后手动(在 Far Manager 中)替换所有位置。不幸的是,这是唯一的方法,工作在100% 的可能情况下。

只需右键单击项目名称并选择 Android 工具,然后单击 重命名应用程序包名称并重命名它。这只适用于 Android 项目。

要在 Android 中更改应用程序名称,请转到 res/values/strings.xml并将 app_name更改为您想要的。

好吧,我必须这么做:

问题: 我有一个基础项目,我想用它作为几个其他项目的起点,这些项目将与基础项目位于同一个工作区中。在我自己的本地回购中,基础项目已经在 GIT 的控制之下。是时候复制基础项目“ MyBaseApp”,成为“ MyKillerApp”的起点了

解决方案:

  1. 我只是将整个 MyBaseApp 目录复制为 MyKillerApp,并将两个目录并排放置。
  2. 我编辑了文件 MyKillerApp-> 。并将名称从 MyBaseApp 更改为 MyKillerApp。(这是第3步工作所必需的。)
  3. 我打开 Eclipse,对 MyKillerApp 做了一个 File-> Import of MyKillerApp (我省略了一些关于如何使用 Import 菜单的细节,但是点击一下,你就会知道该怎么做了)
  4. 我在软件包管理器中右键单击 MyKillerApp,然后选择 Android Tools-> Rename Application Package to MyKillerApp。除了最后一个关于非 java 文件的复选框之外,我检查了所有重命名选项。
  5. 我在包管理器中突出显示了 src-> com.myname.MyBaseApp,并对 MyKillerApp 执行了 F2操作。然后我对几个类做了同样的处理,包括打开放入 AndroidManifest.xml 文件的活动类。
  6. 我不得不更新一些函数调用的名称,但编译器很容易就把它们指给我看。

因此,我有一个从基础项目衍生出来的新项目,没有从基础项目遗留下来的术语,它是在自己的本地 GiT 回购。

我在这方面也遇到了很大的麻烦。

我通过重构重命名了项目和软件包,但是它使得这个应用程序毫无用处。我将它重命名为原来的,并使用 Android 工具来重命名包,这个方法起作用了,但是我的包文件夹和类使用了旧的名称。

然后我重构了包文件夹。现在应用程序不能运行了。我的旅客名单一团糟。它把我的发射器名称翻了一倍,例如 com.ronguilmet.app/com.ronguilmet.com.class。我解决了这个问题,我不得不手动编辑所有的活动。

这对我来说非常有效(简单的文本替换) :

转到搜索-> 文件

包含文本: 旧的包名

文件名模式: *

范围: 工作区

替换

替换: 新的软件包名称

现在您的项目充满了错误。

在项目资源管理器中单击包,然后按 F2(重命名)。

填写新的软件包名称并检查所有的校验标记。

预览

好的

等待 Eclipse 刷新。如果仍然有错误,清除工作区中的所有项目:

工程项目 -> < em > 清洁

这些对我来说都不管用,它们都会引入错误。

以下几点对我很有效:

  • 右键单击该项目并选择 Android Tools > > Rename 应用软件包。
  • 输入新的 Package 名称
  • 接受它想要进行的所有自动更改
  • 对更新启动配置说 yes

一份 非常重要通知:

NEVER 使用类似于传递包含包名称的字符串值的直接包名称。使用 getPackageName ()方法。这将使重命名具有动态性。执行任何操作来访问方法 getPackageName ()。

在 Eclipse Juno 中,重命名的正确方法是:

  1. 去编辑清单。
  2. 删除清单中的所有旧包名称。
  3. 在清单中的每个位置放置新的包名称,而不是旧的包名称。您可能有需要直接包名称引用的类(即活动)。
  4. 保存清单。
  5. 然后右键单击项目中的包名称。
  6. 选择「重构」。
  7. 选择「重命名」。
  8. 键入新的包名称。
  9. 选择“更新引用”。
  10. 按 OK 键,就完成了,还要注意替换新名称时应该做些什么。
  11. 不要忘记使用新的包名更新布局 XML 文件。您可能有一个自定义视图。去找他们。

重命名应用程序-完整指南

**A) for changing Just the application name
(App name which is displayed below icon)
in the Manifest.xml file, in <application tag,
android:label="YourAppName"
then do the same in All the <activity Tags


B) For changing EVERYTHING
(folder names, Package names, Refrences,app name, etc.)
*1) Renaming package names in gen folder and manifest.xml
Right Click on Your project
Android tools- Rename Application Package


*2) Renaming package names in src folder
Expand src folder, Click on package (Single click)
Press Alt+Shift+R
Check Update references and Rename subpackages
3) Renaming the app's main Folder (Optional)
click on the application's folder (Single click)
then Press Alt+Shift+R


4) Renaming application name- Refer "A)"**

下面这句话在《月食》中对我很有用:

进入 AndroidManifest,搜索并用新的包名替换旧的包名,并在保存时更新所有内容。转到您的根项目包,然后按 F2,写入新的名称,并选中更新引用和重命名子包复选框。在这之后,所有项目都变成了红色(抱怨每个 java 文件都有 R 导入) ,因为它没有改变我在布局 xml 中自定义视图的结束标记。手动更换后,一切恢复正常。就是这样。

 Right click on your project name and select Android Tools , then click
Rename Application Package, then change your project name click OK and
click Finish.

enter image description here

enter image description here

enter image description here

直到我把这篇文章中提到的两个答案结合起来,这些方法才对我有用。

步骤1: 右键单击项目-> 选择 Android 工具-> 重命名应用程序包。 (这将更改 gen 文件夹和 AndroidManifest 中的所有文件,但不会更改 src 文件夹中的包名,因此我遵循了步骤2)

步骤2: 在 src 文件夹中右击您的包名-> Refactor-> Rename-> 输入您在步骤1中输入的新名称。

只是为了确保检查 AndroidManifest 是否仍然有旧的包名,并用新的包名替换(在我的例子中,在“ use-mission”标记中)。

然后关闭 Eclipse 并重新打开它。卸载应用程序从您的设备,并再次安装它,一切应该是工作正常。

希望这能帮到你,节省你的时间。