2012-01-09 14 views
8

Acabo de lanzar mi primera aplicación para Android en el mercado. Actualmente estoy trabajando en algunas características nuevas para la próxima versión y me gustaría instalar esta "compilación dev" en mi teléfono, sin desinstalar la versión de "producción" (entre otras cosas, esto detendrá futuras actualizaciones de Market).Instalar la compilación "dev" de la aplicación para Android junto con la versión del mercado lateral

Estoy especialmente interesado en esto porque me gustaría dar el APK a amigos/"beta-testers" para probar, pero no quiero que desinstalen primero la aplicación liberada.

todos modos hay que tener en un dispositivo de dos aplicaciones: "de la aplicación (a través del mercado)" y "Aplicación (DEV)"

Sería esto implicar el uso de una clave de firma diferente o modificar el manifiesto de alguna manera?

Gracias!

+0

Para las pruebas beta, le sugiero que le diga a sus amigos que instalen la versión actual de App Market y que envíen archivos .apk: s firmados para las versiones de desarrollo (las que está a punto de publicar una vez listas). Y no, no es posible tener la misma aplicación instalada con diferentes claves (al menos en stock Android AFAIK). – harism

Respuesta

6

Simplemente puede cambiar el nombre del paquete, por lo que ambas aplicaciones están instaladas.

Debe cambiar el nombre del paquete en el manifiesto y en la carpeta de origen. Utilice la refactorización de Eclipse para ello y se realizará en un minuto.

No es necesario que se firmen con la misma clave.

+0

¿Pero pueden firmarse con la misma clave? –

+0

Claro, eso es posible. – Force

+0

Al "cambiar el nombre del paquete", ¿quiere decir cambiar "com.example.myapp" por "com.example.myappdev"? – Eponymous

3

Usar Gradle esto es muy fácil. He aquí un extracto de una de mis archivos Gradle:

android { 
    // ... 

    defaultConfig { 
     resValue "string", "app_name", "<app name>" 
     // ... 
    } 

    buildTypes { 
     release { 
      // ... 
     } 
     debug { 
      resValue "string", "app_name", "<app name> (debug)" 
      applicationIdSuffix ".debug" 
      // ... 
     } 
    } 
} 

La parte clave para permitir que otra instalación utilizando el applicationIdSuffix que se establece en el debug acumulación. Bajo el capó esto básicamente hace lo mismo que se propuso en la respuesta de la Fuerza; cambia la identificación de la aplicación de tu aplicación.

Al configurar el resValue app_name también podemos tener diferentes nombres de aplicaciones, esto hace que sea mucho más fácil hacer un seguimiento de qué instalación es la que (ya que ambas aplicaciones obtendrían el mismo nombre de lo contrario).

No olvide eliminar app_name de su strings.xml y complete el nombre de su propia aplicación en lugar de <app name> si decide establecer la aplicación_nombre en el archivo gradle como hice anteriormente.

Cuestiones relacionadas