【问题标题】:Change Android Package name without refractoring in Android Studio在 Android Studio 中更改 Android 包名称而不进行折射
【发布时间】:2015-10-20 18:36:57
【问题描述】:

我希望能够在不重构的情况下更改我们应用的包名称。目的是为白标应用程序创建一个构建系统(更改徽标和其他小细节以隐藏我们的品牌并强调客户的)。这是当前的公司逻辑。我知道它没有得到官方支持,但我相信对构建过程进行一些小改动或修改是可能的。

重构会留下项目中每个文件的修改日志,从而使这些时间变得毫无意义。这是一个可能的解决方案,但我认为不是最好的。

如果更改包名并且不重构,一切正常,除了 R 类。在 Eclipse 上,我复制了 R 文件并将其重命名(当然要保持更新)。在 Android Studio 中,这是不可能的,因为我找不到 R 文件并且不了解他们的构建过程。

我知道大多数 Android 开发人员无法回答这个问题,但是否有人对 Android Studio 构建过程有经验,请帮助。

【问题讨论】:

    标签: android android-studio


    【解决方案1】:

    Android Gradle 插件已将“包名”与您的应用程序的唯一标识符分离。

    以前,与与 Eclipse 和 ADT 插件一起使用的 Ant 构建系统的情况一样,您的应用程序标识符和“包名称”是一回事,由清单中的 package 属性定义。

    使用 Gradle 构建系统,除了清单中的 package 属性外,您还可以在 build.gradle 中定义 applicationId。大多数情况下,两者是相同的,但不一定是。

    清单中的 package 属性决定了 R 类的 Java 包。如果您对应用程序的所有版本都保持相同,则 R 类导入不会改变。

    在您的应用程序的不同变体之间会发生变化的是 build.gradle 中的 applicationId。这是 Play 商店和 Android 设备用来唯一标识您的应用程序的内容。

    欲了解更多信息,请参阅帖子ApplicationId versus PackageName。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      • 1970-01-01
      • 2021-07-02
      • 1970-01-01
      • 2014-10-25
      • 2013-08-19
      相关资源
      最近更新 更多