2015-11-19 64 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