Android: cómo administrar varios proyectos con contenido similar pero con nombre de aplicación y nombre de aplicación diferentes

Tenemos un proyecto que necesitamos para lanzar dos versiones que tendrían casi el 99% de características similares pero diferentes nombres de packages y nombres de aplicaciones.

Hemos creado una twig en git para ese proyecto que maneja la versión para el cliente, mientras que la twig principal es nuestra versión.

Ahora, el problema es que cada vez que solucionamos algunos errores en la versión principal, tenemos que hacer lo mismo en la versión del cliente. Sin embargo, esto solo duplicará el esfuerzo. Si simplemente lo enviamos directamente a esa twig, habrá muchos conflictos que corregir debido a la diferencia de nombre del package.

¿Hay una buena solución para esto? ¡Gracias!

JLT,

Mira las variantes de compilation en gradle. Esto te permitirá crear diferentes sabores y packages.

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants

También puede usar bibliotecas, pero a veces puede ser un poco complejo. He hecho ambas cosas y prefiero usar gradle para hacer todo el trabajo y luego puedo centrarme en el desarrollo y no en una biblioteca adicional y tal vez en varias bases de código.

Aquí hay un ejemplo que puedes usar en tu file build.gradle:

android { final PACKAGE_NAME = "com.example" productFlavors { app1 { applicationId PACKAGE_NAME + ".app1" } app2 { applicationId PACKAGE_NAME + ".app2" } } }