¿Cómo incluir la cadena de versión en el nombre de archivo al crear Android apk con hormiga?

Normalmente construimos el paquete android en modo de depuración con el comando

ant debug 

Y obtuvo el nombre de archivo apk AppName-debug.apk .

¿Hay alguna forma de generar el archivo apk en el formato de AppName-debug-<version-number>.apk directamente sin el comando 'mv'?

Gracias.

He hecho esto de una manera automatizada, utilizando la información del manifiesto de Android.

Mi enfoque fue modificar el archivo local build.xml proyecto para importar una copia personalizada del archivo build.xml maestro, en la última versión del SDK el archivo maestro que se importa en su archivo local se encuentra en <SDK>/tools/ant/build.xml (was android_rules.xml en versiones anteriores) Tenga en cuenta la línea de import en el archivo build.xml predeterminado local para su proyecto.

Los comentarios en el build.xml local creado por las herramientas de Android contienen detalles sobre cómo realizar la personalización, de forma que las futuras actualizaciones de las herramientas no rompan los cambios.

En el archivo de reglas personalizadas, agregue:

 <xmlproperty file="AndroidManifest.xml" prefix="mymanifest" collapseAttributes="true"/> 

Esto se lee en el manifiesto como un conjunto de propiedades de ant, con un prefijo personalizado para garantizar que no hay colisión de nombres.

A continuación, puede agregar $ {mymanifest.manifest.android:versionName} a cualquiera de los lugares en los que se ha definido el nombre apk, solo busque .apk en el archivo de reglas personalizadas.

He utilizado este proceso para automatizar los archivos de versiones de un servidor de compilación.

Con algunos ajustes adicionales también es posible tener su aplicación de lanzamiento firmada automáticamente, comprar la configuración de las contraseñas en las propiedades y el uso de los de la tarea de firma. Las contraseñas reales se almacenan en un archivo de propiedades separado que sólo vive en el servidor de compilación. Si bien un riesgo menor de seguridad, en algunos casos es pesado por la necesidad de completa de extremo a extremo de automatización de la construcción.

Otra solución similar a Android es usar la tarea XPATH tal como se hace en el directorio $ {sdk.dir} /tools/ant/build.xml:

 <xpath input="AndroidManifest.xml" expression="/manifest/@android:versionName" output="versionName" default="unknown"/> <echo message="name: ${versionName}"></echo> 

Esto requiere la definición de la tarea:

 <path id="android.antlibs"> <pathelement path="${sdk.dir}/tools/lib/anttasks.jar" /> </path> <taskdef name="xpath" classname="com.android.ant.XPathTask" classpathref="android.antlibs" /> 

No sé cuál es la versión mínima de SDK, pero funciona con SDK14.

Saludos, Michael

La solución descrita en la siguiente publicación tiene un archivo custom_rules.xml que se puede copiar para obtener el resultado deseado. http://jeffreysambells.com/2013/02/14/build-your-android-apk-with-the-manifest-version-number

Sí hay una manera de generar el archivo apk con cualquier nombre le doy un proceso a usted en barbecho este proceso que usted consiguió .apk mencionar su nombre.

1-Haga clic derecho sobre la aplicación en el explorador de paquetes. 2-Elija la exportación. 3-eligió Android 4-Elija Exportar aplicación de Android. 5-Crear nuevo almacén de claves. 6- llenar el formulario. 7-: Dar nombre de archivo apk lo que desea 8-: dar lugar a apk para almacenar apk.

Entonces encuentras la solución de tu problema. Espero que esto sea de ayuda.

  • Versión errónea keystore al hacer llamadas https
  • ¿Para qué versión de Android debo desarrollar?
  • MediaPlayer de Android - setDataSource y lanzamiento - IllegalStateException
  • Clase de carga basada en la versión de SDK
  • Cómo utilizar una función sólo si la versión es 11+
  • PhoneGap Android obtiene el código de la versión de la aplicación
  • Cómo aprender qué versión de la aplicación instalada mediante programación en android
  • ¿El mejor acercamiento para las versiones libres y pagadas de la aplicación de Androide?
  • Cómo obtener la versión de la biblioteca interna referenciada de apk
  • Proyecto conectado a SVN que no muestra información de versión en eclipse
  • ¿Qué significa la versión MR?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.