我正在尝试在我的Android应用程序中设置ENV变量(例如不同环境的API密钥)。在我们的CICD中,构建apk文件的命令如下(它可以是release或debug,但对于下面的示例,我使用debug)
gradlew assembleDebug
这工作得很好,但现在在整个代码中,我使用了类似于下面代码片段的变量:
private static final String API_KEY = BuildConfig.apiKey;
这个想法是,BuildConfig
属性apiKey
将被基于环境的不同API密钥替换。我的想法是通过以下命令设置属性:
gradlew assembleDebug -PapiKey=SOME_STRING_API_KEY_VALUE
这将apiKey分配给值SOME_STRING_API_KEY_VALUE,但作为变量而不是字符串。我只想要字符串值。我觉得gradle/groovy的某些方面我不理解,但我想要完成的似乎很微不足道。
很抱歉给您带来不便,我应该多做一点调查。我只需要使用转义字符的API键值-PapiKey=“SOME_STRING_API_KEY_VALUE”
,如果有一个更优雅的解决方案,我想要完成,请让我知道!