Java 模块中的 BuildConfig 等效项是什么?- 安卓

我正在使用AndroidStudio,我有以下内容:

  • 主要安卓项目:应用程序
  • Java 库:通信

我想设置我的“通信”模块的 gradle 文件来实现以下目标:

  • 作为应用程序模块的 gradle,我可以为 BuildConfig.java 文件设置变量,例如:

    buildTypes {
        release {
            ...
            buildConfigField "String", "SERVER_URL", '"my_url"'
        }
    
        debug {
            buildConfigField "String", "SERVER_URL", '"my_url"'
        }
    }
    

然后我可以使用它们BuildConfig.SERVER_URL

问题是:如何使用Java库模块实现这一点?


答案 1

我认为您正在寻找此Gradle插件。它将BuildConfig带入了纯Java模块。

https://github.com/mfuerstenau/gradle-buildconfig-plugin


答案 2

如果通过Java库你的意思是Android模块,那么:

将文件内的 buildTypes 变量设置为库模块(如应用模块)。build.gradle

通过使用正确的构建配置类获取它。

  • my.package.app.BuildConfig.APP_VARIABLE
  • my.package.library.BuildConfig.LIBRARY_VARIABLE

换句话说,也许你可以看看gradle任务和系统环境这个答案可以帮助你 https://stackoverflow.com/a/25714617/4681367

没有其他方法可以在 Android 模块之外获取构建配置。

只需根据您的android BuildConfig变量设置/添加一个环境变量。


推荐