0

Ich habe 2 Module in meiner App, eine für die API, eine für die App. in dem API-Modul definieren, I 2 API Endpunkt abhängig, wenn die API in debug oder release Modus kompiliert werden:Falsche Build-Variante

buildTypes { 
    all { 
     buildConfigField "String", "API_DEVICE_TYPE", "\"android-phone\"" 
    } 

    debug { 
     buildConfigField "String", "API_ENDPOINT", "\"https://beta-api.company.com/\"" 
    } 

    release { 
     buildConfigField "String", "API_ENDPOINT", "\"https://api.company.com/\"" 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 

In Android Build variant Panels Studio I die Debug-Variante sowohl app und API-Modul ausgewählt. Aber wenn ich auf play/clean/rebuild/remove/alle Build-Verzeichnisse manuell/resync gradle drücke, ist alles, was ich mache, die Release-API, die jedes Mal kompiliert wird.

Irgendwelche Hinweise?

Mit Gradle Build Tools 2.1.0 und 2.2.0-aplha3 getestet.

Antwort

1

Fügen Sie einfach diesen Code in Ihre Submodul build.gradle

// There is a limitation in gradle: You can't pick what submodule of app you want to compile your app with. 
// This attribut define which build variant you want your api to be compiled against. 
// https://sites.google.com/a/android.com/tools/tech-docs/new-build-system/user-guide#TOC-Library-Publication 
defaultPublishConfig "debug"