2015-11-19 63 views
2

我有我的Facebook应用程序ID对我gradle这个特性与gradle这个属性:和集安卓:值与清单

FACEBOOK_APPLICATION_ID="XXXXXXXXXXXXXXX" 

我在defaultConfig设置:

manifestPlaceholders = [facebookAppId: FACEBOOK_APPLICATION_ID] 

的话,我想在我的清单中使用这个:

<meta-data 
     android:name="com.facebook.sdk.ApplicationId" 
     android:value="${facebookAppId}" /> 

但它不起作用。工作的唯一的东西是我的设置ID功能NEW在一个字符串:

<meta-data 
     android:name="com.facebook.sdk.ApplicationId" 
     android:value="@string/facebook_app_id" /> 

,或者直接把这个:

<meta-data 
     android:name="com.facebook.sdk.ApplicationId" 
     android:value="\ XXXXXXXXXXXXXX" /> 

,但我必须为我的Facebook的帐号在我的gradle这个属性。什么是正确的方法来做到这一点?

谢谢。

回答

3

我新的摇篮,但如果我理解你的问题,我会建议使用这样的事情:

buildTypes { 
    debug { 
     // ... 
    } 
    release { 
     // ... 
     resValue "string", "facebook_application_id", "XXXXXXXXXXXXXXXXX" 
    } 
} 

然后,在你的发布版本,在这个例子中,你可以使用它作为

android:value="@string/facebook_application_id" 

甚至

R.string.facebook_application_id 
+0

它完美,谢谢! 它可能是有用的,所以这个链接解释这个 http://stackoverflow.com/questions/17197636/is-it-possible-to-declare-a-variable-in-gradle-usable-in-java – Magnas

+0

不错,它是你在找什么。如果您可以将答案标记为正确答案,那可以帮助我:-) – Eduardo