【发布时间】:2023-04-03 10:13:01
【问题描述】:
我正在构建一个使用 Android 库作为主要代码源的应用程序。然后我有多个使用该库的应用程序;这些应用程序将具有相同的代码,但配置字段不同,例如端点等。
为了实现这一点,我想我可以在我的库的 build.gradle 文件中有一个 buildConfigField,然后使用相同的名称覆盖我的应用程序的 build.gradle 中的该值,如下所示:
库中的build.gradle:
buildConfigField "String", "API_BASE_URL", "\"http://arandomapibaseurl.com\""
应用中的build.gradle:
buildConfigField "String", "API_BASE_URL", "\"http://myrealapi.com\""
关于如何实现这一点的任何想法?
谢谢!
【问题讨论】:
-
IIRC,您有两个独立的
BuildConfig类,一个用于您的库的包,一个用于您的应用程序包。您的库对应用程序的BuildConfig一无所知,我不知道应用程序可以覆盖库中的BuildConfig。您可能需要探索其他选项(例如,指向 XML 资源的<meta-data>清单元素、基于 Java 的普通配置、覆盖资产)。
标签: android gradle build android-gradle-plugin