清单Placholder的BuildConfig属性更改值

时间:2019-08-05 09:40:27

标签: android manifest

我遵循了有关如何保护API密钥的教程,这使我将API密钥放置在gradle.properties文件中。这使我可以使用BuildConfig.apiKey访问密钥。我将其设置如下:

gradle.properties

apiKey=mykeyishere

build.gradle(应用程序)

def API_KEY = '"' + apiKey + '"' ?: '"API Key: Not provided"'
defaultConfig {
    ...

    each { type ->
        type.buildConfigField STRING, 'apiKey', API_KEY
    }

    manifestPlaceholders = [
        MY_KEY: API_KEY
    ]
}

清单

<meta-data
    android:name="apiKey"
    android:value="{$MY_KEY}" />

到目前为止,除了manifestPlaceholders之外,其他所有东西都可以正常工作。当我对字符串进行硬编码或使用strings.xml时,访问正在使用的服务(我正在使用Facebook和Google进行登录)时没有任何问题,但是当我使用manifestPlaceholders时会出错

0 个答案:

没有答案