2015-02-08 92 views
1

Gradle支持Android應用程序的多種風格構建。如何導出具有不同風味值的環境變量?例如,在flavor1生成時導出值爲「flavor1」的FLAVOR,爲flavor2生成「flavor2」。在build.gradle中導出環境變量

android { 
    ... 
    productFlavors { 
     flavor1 { 
      ... 
     } 

     flavor2 { 
      ... 
     } 
    } 
} 
+0

會使用什麼環境變量? – CommonsWare 2015-02-08 16:58:50

+0

請參閱:https://heapandstack.wordpress.com/2014/06/02/environment-variables-in-gradle/ – alfasin 2015-02-08 17:06:20

+1

該鏈接告訴您無法從Gradle設置環境變量。如果你解釋你想要完成什麼,你可能會有更好的運氣......想要根據風格設置你的構建腳本中的環境變量是非常奇怪的。 – 2015-02-09 17:30:34

回答

0

此鏈接http://inaka.net/blog/2014/12/22/create-separate-production-and-staging-builds-in-android/可能會幫助你。

如果有兩個productFlavors(生產和分期,例如)

你應該建立兩個不同的資源文件夾:

項目/應用/ src目錄/生產/ RES /價值/ strings.xml中

<resources> 
    <string name="root_url">http://production.service.com/api</string> 
</resources> 

項目/應用/ src目錄/分期/ RES /價值/ strings.xml中

<resources> 
    <string name="root_url">http://staging.service.com/api</string> 
</resources> 

您應該添加這下面的代碼在Android {}內:

productFlavors { 

    production { 
     applicationId "com.inaka.app.production" 
    } 

    staging { 
     applicationId "com.inaka.app.staging" 
    } 

} 

這是有不同的productFlavors不同的圖標是一個好主意,只是添加的每個不同的資源文件夾中的圖標。