2011-09-29 20 views
12

Estoy usando el complemento Maven de Android para compilar mi aplicación.Nombre del paquete de variables con Maven Android Plugin

En realidad, estoy compilando 3 versiones de "marca" de la misma aplicación (el ícono de la aplicación, los colores, etc ... cambian, pero no las características). Soy consciente de que necesito usar un nombre de paquete diferente para cada aplicación, para que se consideren diferentes.

Hasta ahora no han logrado tener valores "dinámicas", el uso de filtros de Maven en strings.xml:

<string name="app_name">${app_name}</string> 
<string name="widget_name">${widget_name}</string> 
<string name="app_icon">${app_icon}</string> 

El problema es que esto no funciona para el nombre del paquete! Si hago:

<manifest package="${foo.bar}"> 

ADT (bueno, el validador de XML en realidad) se queja diciendo paquete de atributo tiene carácter no válido '$'

No puedo encontrar ninguna solución para este ... ¿Hay una forma de decirle a ADT que inicie el filtrado de recursos de Maven o algo así?

Respuesta

17

¡Después de más investigaciones, parece ser bastante fácil!

Solo tiene que agregar <renameManifestPackage> en la configuración del complemento Maven de Android. Parece que funciona a partir de la versión> 2.9.0:

<plugin> 
    <groupId>com.jayway.maven.plugins.android.generation2</groupId> 
    <artifactId>maven-android-plugin</artifactId> 
    <version>2.9.0-beta-5</version> 
    <configuration> 
     ... 
     <renameManifestPackage>${manifest_package}</renameManifestPackage> 
    </configuration> 
</plugin> 
+1

¿Funciona para usted? Tengo una aplicación que no se puede instalar en el emulador –

+0

Ok. Funciona pero tuve un problema cuando intenté instalar ambas aplicaciones –

+0

Hombre, esto fue respondido hace un año y medio, solía funcionar, no sé ahora con el último SDK, lo siento – mexique1

Cuestiones relacionadas