He tenido una aplicación y quiero ofrecerla para servir a diferentes clientes con su marca, ¿puedo automatizar los cambios cuando necesito hacer una actualización de la aplicación?

Gracias por A2A. Creo que la tarea que está tratando de perseguir se puede lograr (al menos hasta cierto punto). Me sorprende que tu desarrollador no sepa sobre esto.

De todos modos, si el cambio es tan simple como el color de fondo, los tipos de fuente, los tamaños, las imágenes, etc., puede lograrlo lanzando diferentes variantes de Gradle para cada cliente suyo.

Ahora dentro de esta aplicación puede tener un servicio que tomará estas variables de la base de datos en la nube como Firebase o Zoho. Cada cliente tendrá una tabla separada con propiedades definidas como color, fuentes, imágenes, etc.

Puedes buscar actualizaciones todos los días dentro de tu aplicación o si estás usando Firebase, eso no es necesario en absoluto. Una vez que haya cambiado un valor de propiedad particular en Firebase para un cliente en particular, se reflejará inmediatamente en la aplicación de ese cliente tan pronto como se conecte a Internet (mediante la implementación de escuchas de Firebase).

Ya hemos creado un par de aplicaciones que cambiarían las fuentes, las imágenes, etc.

La ventaja aquí será que no necesita realizar ningún cambio de código en la aplicación como tal. Simplemente actualice los valores en Firebase y viola todo se encargará del lado de la aplicación (por supuesto, se requiere una codificación inicial en la aplicación). Pero estoy seguro de que sus desarrolladores lo harán.

Un buen ejemplo sería un cambio en uno de los logotipos de su cliente. Obtiene el nuevo logotipo, actualícelo en Firebase y su aplicación recibirá un nuevo logotipo la próxima vez que abra la aplicación. También mejora la experiencia del usuario, ya que no tienen que actualizar la aplicación para cambios tan pequeños. 🙂

NOTA : Tenga en cuenta que, aparte de los cambios menores anteriores, no puede automatizar cambios importantes como cambios de código o actualizaciones automáticas de aplicaciones.

Avísame si tienes más preguntas.

Felicitaciones si te gusta! 😉

¡Aclamaciones!

No sé acerca de iOS, pero hay una manera en Android, solo defina la tarea de Gradle con muchas variantes de compilación. Puede cambiar el nombre del paquete, el nombre de la aplicación, los archivos de recursos, etc., Gradle es un sistema de compilación completo. El aprendizaje no será muy difícil. Apk también creado por gradle. Si desea publicar la aplicación en PlayStore sin Play Console, puede usar la API disponible para PlayStore. Puede escribir un pequeño programa para publicar la aplicación en la tienda de juegos.

Inicio | API de desarrollador de Google Play
El | Desarrolladores de Google

¿Cómo cambiar el nombre del paquete de la aplicación de Android cuando se ensambla con Gradle?

Cómo reemplazar recursos de cadenas con Android Gradle

Llevo 6 años haciendo esto en mi empresa. La respuesta más simple que puedo ofrecerle es que la clave está en un marco de código abierto llamado Fastlane.

Ahora que conoce la tecnología subyacente necesaria para que esto suceda, aún tiene que configurar sus proyectos para construir desde archivos de configuración en lugar de la fuente. En iOS, hay un poco más que seguir, que afortunadamente fastlane hace un trabajo tremendo haciéndolo lo más fácil posible.

Algunas cosas que necesitará investigar es el uso de archivos .env, archivos .xcconfig, esquemas / objetivos compartidos dentro de su archivo de proyecto iOS y algunas noches para familiarizarse. Como se mencionó, usa sabores dentro de su archivo gradle para lograr esto en Android, y el uso de archivos .env todavía está en la mezcla.

Recientemente publiqué un blog en el que hablaba de por qué las empresas SAAS deberían etiquetar sus aplicaciones móviles, y parece que eso es exactamente lo que quieren perseguir.

¿Está pensando en etiquetar en blanco su software?

Lea el artículo anterior y no dude en dejar cualquier pregunta en esa publicación o volver aquí.

¡Aclamaciones!

Esto se llama etiquetado blanco y hay muchas formas de hacerlo. Es probable que sus desarrolladores tengan una opinión sobre cuál es la forma más fácil de hacerlo. La decisión que tendrá que tomar es qué reglas querrá usar para determinar qué marca obtiene su aplicación. Por ejemplo, ¿cómo sabe que esta aplicación es para un cliente en particular? ¿Está lanzando una nueva distribución para cada aplicación o no va a mostrar la marca hasta después de que el usuario inicie sesión o haga una selección que determine a qué cliente pertenece? a.

Hay herramientas de bajo nivel para hacer esto, pero tendrá que pedirles a sus desarrolladores que desarrollen alguna utilidad que le permita automatizar el proceso para que pueda realizarlo sin escribir código. Es probable que esto no sea un trabajo pesado, pero cómo exactamente determina qué marca obtiene una aplicación en particular y qué cosas cambia la marca para un usuario en particular cambiará la complejidad. Esto no es algo que pueda hacer por su cuenta con herramientas listas para usar. Esta es una conversación con tus desarrolladores. Tenga en cuenta que hay formas fáciles y difíciles de hacer esto, sea de alto nivel y flexible con lo que quiere hacer y pregúnteles si hay formas más fáciles de lograr algo similar a lo que pide. El diablo está en los detalles.

Cada aplicación es específica, por lo que es poco probable que haya una herramienta que pueda automatizar todas sus aplicaciones.

Sin embargo, lo que recomiendo es que sus desarrolladores configuren sus aplicaciones para que todo lo que necesite hacer sea arrastrar, soltar y reemplazar las imágenes, y en segundo lugar, tener una sola clase / archivo con todas las propiedades que pueda necesitar para cambiar como el esquema de color de la aplicación. Entonces, cuando necesita una nueva aplicación, solo tiene que arrastrar y soltar imágenes y luego cambiar el color y la fuente de la aplicación, por ejemplo.

var mainColor = .blue // Un ejemplo en iOS, cambiarías esta línea.

El próximo desafío es exportar las aplicaciones. Exportar para Apple y Android es diferente y es una pena. Sin embargo, probablemente no valga la pena intentar automatizar esto demasiado.

Si tiene todos sus archivos de imagen e información de la aplicación y las aplicaciones están configuradas como se indica arriba, probablemente podría volver a distribuir y enviar las aplicaciones a la App Store y Andorid en ~ 15 minutos.