2015-06-25 11 views
22

Ich habe eine Reihe von Varianten in meiner App, und ich möchte ein Boolean buildConfigField für eine Teilmenge von ihnen festlegen. Gibt es eine Möglichkeit zu vermeiden, das Feld zu jedem Geschmack hinzufügen zu müssen? Im Idealfall würde meine build.gradle wie folgt aussehen:Standardwert für Gradle buildConfigField boolean für alle Varianten

productFlavors { 
    flavor1 { 
    } 

    .... 

    flavor4 { 
     buildConfigField "boolean", "DISABLE_SOMETHING", "true" 
    } 

    flavor5 { 
     buildConfigField "boolean", "DISABLE_SOMETHING", "true" 
    } 

    .... 

    flavor8 { 
    } 
} 

Also in meiner app ich nur

gehen
if (BuildConfig.DISABLE_SOMETHING) { 
    //disable stuff 
} 

schlägt jedoch fehl, Kompilierung, wenn ich versuche, mit zu bauen, zum Beispiel flavor1, wie Es kann das Feld nicht finden. Ich möchte nicht daran denken, das zu jedem neuen Geschmack hinzuzufügen, den ich erschaffe. Gibt es irgendwelche Möglichkeiten, dies zu umgehen?

+1

möglich Duplikat [Gibt es eine Möglichkeit, einen gemeinsamen Abschnitt mit buildConfigField und resValue in gradle haben?] (Http://selvin.pl/ googesearch1.png) – Selvin

+1

@Selvin schöner Ort, ich habe das nicht gesehen, als ich gesucht habe. Vielen Dank – Michael

Antwort

38

Sie können defaultConfig für diesen Einsatz (innen android{})

defaultConfig { 
    buildConfigField "boolean", "DISABLE_SOMETHING", "true" 
} 
Verwandte Themen