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


¿Cómo puedo adjuntar archivos de recursos de cadena diferentes durante las versiones de lanzamiento y depuración de hormigas android?

Quiero adjuntar archivos de recursos de cadena diferentes durante las versiones de lanzamiento y depuración de ant android. Necesito esto para tener la configuración separada para la llave del api del mapa, el anfitrión alejado etc

  • Fallo
  • Android.mk, incluye todos los archivos cpp
  • Grabar llamadas telefónicas en el teléfono Android?
  • Android Studio gradle no compila la versión especificada
  • Eliminar un proceso que se ejecuta en el emulador de Android
  • "Falta el componente de herramientas de plataforma de SDK!"
  • ¿Hay una manera de establecer Alpha dibujable usando XML?
  • ¿Dónde está la ubicación de mi tarjeta SD en 4.4.2?
  • Cámara Android setJpegQuality ignorado
  • Android Studio no puede abrir ningún proyecto
  • ¿Cómo mostrar el diálogo habilitar ubicación como Google Maps?
  • ¿Hay una manera de organizar la carpeta res en android?
  • 3 Solutions collect form web for “¿Cómo puedo adjuntar archivos de recursos de cadena diferentes durante las versiones de lanzamiento y depuración de hormigas android?”

    Utilizo Eclipse para las compilaciones diarias de la depuración, después Ant para las ediciones de la versión. Tengo versiones de depuración y lanzamiento del archivo que contiene la clave de la API de Google Maps. He modificado el build.xml (estoy en las herramientas SDK R15) para hacer alguna copia del archivo apropiado antes de la construcción y después. He cambiado los objetivos -pre-build y release como así:

    <target name="-pre-build"> <echo message="In pre build-----------------------------------" /> <echo message="build target ${build.target}" /> <if condition="${build.is.packaging.debug}"> <then> <echo>Copying debug api key************************************</echo> <copy file="${layout.dir}/googlemapdebug.xml" tofile="${layout.dir}/googlemap.xml" overwrite="true" /> </then> <else> <echo>Copying RELEASE api key************************************</echo> <copy file="${layout.dir}/googlemaprelease.xml" tofile="${layout.dir}/googlemap.xml" overwrite="true" /> </else> </if> </target> <target name="release" depends="clean, -set-release-mode, -release-obfuscation-check, -package, -release-prompt-for-password, -release-nosign" ............. LINES OMITTED ............. <!-- Zip aligns the APK --> <zipalign-helper in.package="${out.unaligned.file}" out.package="${out.final.file}" /> <echo>Release Package: ${out.final.file}</echo> <echo>Always copy DEBUG MAPS API file back for Eclipse **********************</echo> <copy file="${layout.dir}/googlemapdebug.xml" tofile="${layout.dir}/googlemap.xml" overwrite="true" /> </sequential> </do-only-if-not-library> <record-build-info /> </target> 

    Defino layout.dir en el archivo ant.properties (nuevo nombre para build.properties después de SDK Tools 14):

     projectname=MyProject workspace.dir=/dev/projects/EclipseIndigo/AndroidWorkTwo base.dir=${workspace.dir}/${projectname} layout.dir=${base.dir}/res/layout 

    Usted podría adaptar esto para satisfacer sus necesidades, asumiendo que usted no tiene demasiados archivos para intercambiar adentro y hacia fuera. Supongo que podría agregar una propiedad para el directorio que contiene sus strings.xml

    Nick, no entiendo por qué también reescribes la tarea de lanzamiento. He añadido prebuild solamente y funciona para mí

     <target name="-pre-build"> <if condition="${build.is.packaging.debug}"> <then> <echo>Copying debug config</echo> <copy file="./config/debug.xml" tofile="./res/values/config.xml" overwrite="true"/> </then> <else> <echo>Copying release config</echo> <copy file="./config/release.xml" tofile="./res/values/config.xml" overwrite="true"/> </else> </if> </target> 

    Las dos respuestas están basadas en Eclipse ADT . Ahora Android Studio es el IDE más popular, puede aprovechar el sistema de gradle de gradle .

    En el archivo build.gradle , agregue el código siguiente en la etiqueta android :

     buildTypes { release { buildConfigField "boolean", "LOG_DEBUG", "false" resValue "string", "some_key", "AAAAAAA" } debug { buildConfigField "boolean", "LOG_DEBUG", "true" resValue "string", "some_key", "BBBBBBB" applicationVariants.all { variant -> variant.outputs.each { output -> output.outputFile = new File(output.outputFile.parent, output.outputFile.name.replace(".apk", "-" + defaultConfig.versionName + ".apk")) } } } } 

    Puede utilizar BuildConfig.LOG_DEBUG como un valor boolean en su código Java. Sólo recuerde import your.package.name.BuildConfig;

    También puede utilizar some_key como un recurso de cadena. El código Java de su uso es: R.string.some_key .

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.