Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Definir buildConfigField para androidTest

Estoy definiendo un campo en particular en BuildConfig para obtener la URL durante el tiempo de ejecución. Por lo tanto, para cada tipo de compilación, utilizo una cadena diferente:

  prod { buildConfigField "String", "BASE_URL", "\"abc.com\"" } debug { buildConfigField "String", "BASE_URL", "\"efg.com\"" } 

¿Es posible definir una URL diferente mientras se ejecutan las pruebas de Android? He intentado poner esta configuración en sourceSets->androidTest , pero no es aceptada.

2 Solutions collect form web for “Definir buildConfigField para androidTest”

Agregue BuildConfig.java personalizado a your.app.package en test / androidTest dir.

Android Studio lo marca en rojo, pero funciona.

Tienes que pasarlo como un parámetro a la tarea connectedAndroidTest .

 android { ... buildTypes { prod { buildConfigField "String", "BASE_URL", "\"${getBaseUrl("abc.com")}\"" } debug { buildConfigField "String", "BASE_URL", "\"${getBaseUrl("efg.com")}\"" } } } def getBaseUrl(String fallback) { return project.hasProperty("base_url") ? project.getProperties().get("base_url") : fallback } 

Luego pasar los parámetros a través de -P :

 ./gradlew connectedDebugAndroidTest -Pbase_url="xxx.com" ./gradlew connectedProdAndroidTest -Pbase_url="yyy.com" 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.