【问题标题】:How to quickly build 20+ versions of an app (with slight changes in each + different package)?如何快速构建一个应用程序的 20+ 个版本(每个版本都有细微的变化 + 不同的包)?
【发布时间】:2017-05-29 16:19:37
【问题描述】:

我们正在开发一款针对不同市场(国家)的 Android 应用。

这个问题的范围是回答两件事:

  1. 如何在应用程序中轻松配置和切换将在整个代码库中使用的“全局”参数(例如,此应用程序的此“变体”将针对的国家/地区),例如后端 API 端点。换句话说,有 20 多个后端 API,具体取决于发布的变体。
  2. 如何轻松构建这 20 多个不同的应用程序,更改每个应用程序的包名称,并在构建每个应用程序时考虑上述唯一的全局参数。

【问题讨论】:

  • 如果可能的话,为了发布管理,自动检测用户所在的国家。讨论herehere
  • 不,我们对在运行时检测用户的位置不感兴趣。我们希望为不同的市场构建定制的应用程序。根据构建“变体”,应用程序将完全不同,并且行为也会不同。

标签: android build.gradle


【解决方案1】:

如何在应用程序中轻松配置和切换将在整个代码库中使用的“全局”参数(例如,此应用程序的此“变体”将针对的国家/地区),例如后端 API 端点。换句话说,有 20 多个后端 API,具体取决于发布的变体。

为每个国家/地区设置一个product flavor。使用 buildConfigFieldBuildConfig 添加一个(或多个)字段,其中包含后端端点的详细信息。

如何轻松构建这 20 多个不同的应用程序,更改每个应用程序的包名称,并在构建每个应用程序时考虑上述唯一的全局参数。

运行 gradle assembleRelease 以组装所有 20 多个 APK。或者,运行gradle assembleFlavorRelease 来组装一个名为flavor 的APK。

【讨论】:

    猜你喜欢
    • 2019-05-19
    • 2023-04-04
    • 2019-10-12
    • 1970-01-01
    • 2013-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多