完全更改包名称,包括公司域名

时间:2013-09-01 11:43:22

标签: android android-studio android-package-managers

我们假设这是包名: package com.company.name。如何更改company

P.S。我看到了如何更改name而不是company。 我正在使用Android Studio。

17 个答案:

答案 0 :(得分:39)

你可以这样做:

在清单文件中手动更改包名称。 单击您的R.java类并按F6(Refactor-> Move ...)。它允许您将类移动到其他包,并且将更新对该类的所有引用。

参考:How do I rename the android package name?

答案 1 :(得分:37)

当前套餐: com.company.name

新套餐: com.mycomapny.name

步骤: 1)假设您处于此屏幕,如下所示。

enter image description here

2)打开项目窗格,然后单击设置图标。

3)取消选择Compact Empty Middle Packages。

4)然后你的包裹被分成几个部分,如下所示。

5)右键点击“公司”选择Refactor - >选择重命名 - >重命名目录。

enter image description here

6)现在您的“公司”已更改为新的“mycomapny”,并且更改反映如下图所示。

enter image description here

7)现在更改AndroidManifest.xml文件中的包名称。

enter image description here

8)打开app level build.gradle并更改包名称。

enter image description here

9)您将收到错误,因为无法解析符号“R”。

10)删除出现此错误的行,工作室将自动导入新的R文件。

11)如果您有多个文件,请按“Cntrl + Shift + R”使用查找和替换选项

或“选择编辑 - >查找 - >替换路径..”

enter image description here

12)选择全部替换。

答案 2 :(得分:28)

这对我有用,来自https://stackoverflow.com/a/18637004/127434

  

另一个好方法是:首先创建一个具有所需的新包   通过右键单击java文件夹命名 - >新的 - >封装

     

然后,选择并将所有类拖到新包中。   AndroidStudio将在任何地方重构包名称。

     

最后,删除旧包。

答案 3 :(得分:8)

如果您只是想重命名App包,那么@Luch Filip的解决方案效果很好。在我的情况下,我也想重命名源包,以免混淆。

只需要两个步骤:

  1. 点击你的源文件夹,例如com.company.example> Shift + F6 (重构 - >重命名......)> 重命名包>输入您想要的名字。

  2. 转到AndroidManifest.xml,点击您的包名> Shift + F6 (重构 - >重命名......)>输入与上面相同的名称。

  3. 第1步将自动重命名您的R.java文件夹,您可以立即构建。

答案 4 :(得分:5)

下面给出了四个步骤:

  1. 点击下面的app文件夹:
  2. enter image description here

    com.new25.impro。按Shift + F6 {Refactor-> Rename ...} 重命名包,然后按refactor

    1. 在那之后,看到android监视器。这显示了包名称随处可见的变化。点击refactor

    2. 转到模块app:change,您的应用程序ID就像该名称一样。然后点击sync now

    3. 现在您可以将包名更改为您喜欢的名称。

答案 5 :(得分:3)

我已经阅读了几乎所有答案。但是我认为一个人不见了。有时候我可能是错的。 我已经使用了下面的方法,并且可以正常工作。

3 Methods to change package name in Android Studio

  1. 选择您的,然后右键单击重构->移动
  2. 选择将软件包从“您的软件包” 移至另一个软件包,然后单击“确定”。
  3. 出现一个新对话框,说多个目录对应于程序包“您的程序包”,然后单击
  4. 输入新的软件包名称(姓氏或姓氏除外)。表示是否要将包名称重命名为“ info.xyz.yourapplication”。然后键入“ info.xyz”,仅保留“您的应用程序”。
  5. 点击重构
  6. 新对话框 Package info.xyz 不存在。您要创建它吗?点击
  7. 点击进行重构
  8. 右键单击新程序包以更改姓氏。 重构->重命名
  9. 重命名程序包
  10. 输入新名称,然后点击重构
  11. 删除所有旧软件包目录。
  12. 更改build.gradle文件中的ApplicationId并单击立即同步

答案 6 :(得分:3)

在Android Studio中,您可以这样做:

例如,如果要将com.example.app更改为iu.awesome.game,则:

  1. 在“项目”窗格中,单击小齿轮图标(enter image description here
  2. 取消选中/取消选择“紧凑空中间包装”选项 enter image description here
  3. 您的软件包目录现在将在单个目录中分解
  4. 分别选择要重命名的每个目录,然后:

    • 右键单击它
    • 选择重构

    • 单击重命名

    • 在弹出对话框中,单击“重命名包”而不是“重命名” 目录

    • 输入新名称并点击“重构”

    • 点击底部的执行重构

    • 花一分钟时间让Android Studio更新所有更改

    • 注意:在Android Studio中重命名com时,它可能会发出警告。 在这种情况下,请选择全部重命名enter image description here

      1. 现在打开您的Gradle构建文件(build.gradle-通常为应用程序或移动设备)。如果尚未自动更新,则将defaultConfig中的applicationId更新为新的程序包名称和同步Gradle:enter image description here

      2. 您可能需要更改清单中的package =属性。

      3. 清理并重建。

      4. 完成!无论如何,Android Studio需要使此过程更简单。

答案 7 :(得分:1)

1)在Android Studio中打开项目文件夹 2)选择app文件夹 - >右键单击,然后选择重构 3)点击移动。它会询问您拥有完整包名的包名称类型,并会要求创建一个新包,是自动创建新请求gradlesync

答案 8 :(得分:1)

要在Android studio中重命名包名,请单击项目部分中的设置图标并取消打开Compact empty Middle Packages,然后将包拆分为多个文件夹名称,然后右键单击需要更改的文件夹名称,点击重构 - > Rename->输入您要更改的名称 - >重构 - >重构目录,然后在整个项目中导入R.java文件。为我工作。

答案 9 :(得分:1)

如果您的公司域/包名称很长,则更棘手。

这是我缺少的链接。您需要选择项目文件 - >设置 - >然后取消选中紧凑的空中产阶级。

答案 10 :(得分:0)

我也面临同样的问题&这是我如何解决的: -

我想将包名 np.com.shivakrstha.userlog 更改为 np.edu.khec.userlog

我选择了 shivakrstha ,我按 Shift + F6 进行重命名折射并重命名为 khec

最后,在 AndroidManifest.xml 中使用相同的软件包名称,在 build.gradle 中使用applicationId,并且不要忘记重建项目

注意: - 我尝试将 np 更改为 jp ,因此我选择 np 并按下< strong> Shift + F6 重命名折射并重命名为 jp ,也可以更改其他内容。

答案 11 :(得分:0)

这可能对你有帮助 - 1)打开包裹的文件。 2)Android Studio在打开的文件上方显示文件的面包屑。 在您要重命名的包上:右键单击&gt;重构&gt;重命名。

enter image description here

答案 12 :(得分:0)

我找到了另一种在整个项目中重命名包的解决方案:

打开包中的文件。 IntelliJ在打开的文件上方显示文件的面包屑。 在您要重命名的包上:右键单击&gt;重构&gt;改名。 这会在整个项目中重命名包/目录。

答案 13 :(得分:0)

执行此操作的最简单方法是将根应用程序文件夹从com.example.MyApp重命名为com.newcompanyname.MyNewAppName,然后将所有出现的旧路径替换为您在任何IDE中的新路径使用

答案 14 :(得分:0)

我没有更改任何软件包名称。以下两个步骤对我有用。完成以下步骤后,即使有两个具有相同程序包名称的应用程序,该应用程序也被安装为NEW。

1)在build.gradle

applicationId“ mynew.mynewpackage.com”

2)在AndroidManifest.xml中             android:authorities =“ mynew.mynewpackage.com.fileprovider”

答案 15 :(得分:0)

就我而言,当我按照规定将 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">

答案 16 :(得分:-2)

您好我找到了最简单的方法。

  1. 使用所需的包名称
  2. 创建一个新项目
  3. 将所有文件从旧项目复制到新项目(old.bad.oldpackage =&gt; new.fine.newpackage,res =&gt; res中的所有文件)
  4. 在new build.graddle中复制旧的build.graddle
  5. 复制新Manifest中的旧Manifest
  6. 备份或只删除旧项目
  7. 完成!