是否可以从AndroidManifest.xml访问BuildConfig值?
在我的build.gradle文件中,我有:
defaultConfig {
applicationId "com.compagny.product"
minSdkVersion 16
targetSdkVersion 21
versionCode 1
versionName "1.0"
// Facebook app id
buildConfigField "long", "FACEBOOK_APP_ID", FACEBOOK_APP_ID
}
FACEBOOK_APP_ID
在我的gradle.properties文件中定义:# Facebook identifier (app ID)
FACEBOOK_APP_ID=XXXXXXXXXX
要在我的应用程序中使用Facebook connect,我必须将此行添加到我的AndroidManifest.xml中:
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/applicationId"/>
我想用gradle中定义的BuildConfig字段
@string/applicationId
替换FACEBOOK_APP_ID
,如下所示:<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="FACEBOOK_APP_ID"/>
使用BuildConfig可以吗?如果没有,我该如何实现?
最佳答案
代替
buildConfigField "long", "FACEBOOK_APP_ID", FACEBOOK_APP_ID
和
resValue "string", "FACEBOOK_APP_ID", FACEBOOK_APP_ID
然后rebuild your project(Android Studio->构建->重建项目)。
在项目构建过程中,这两个命令都生成生成的值-第一种情况由Java常量组成,第二种情况由Android资源组成-但是第二种方法将生成
string
资源值,可以使用@string/FACEBOOK_APP_ID
语法对其进行访问。这意味着它既可以在 list 中也可以在代码中使用。关于android - 如何在AndroidManifest.xml文件中访问BuildConfig值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28954071/