Buenos días.
Estoy comenzando a programar con Android y tengo una duda existencial. Teniendo en cuenta que programo en nativo, con Android Studio... ¿cuál es la mejor forma y la recomendable de hacer que la App android tenga comunicación constante con una Base de Datos que está alojada en un Servidor?
Por temas de seguridad y variedad de clientes de la APP, no se puede establecer una conexión directa dando permisos por ip a cada dispositivo... Siendo así, cuál es la forma por ejemplo de poder lanzar consultas a la base de datos y recibir los datos a mostrar?
Lo que ahora mismo tengo en mente, y no se si es una burrada, es hacer un intermediario que sea un Servicio WEb, es decir, un Servicio Web alojado en el servidor de la Base de Datos que estando allí, sí tenga conexión directa con la BBDD. Entonces este servicio Web recibe las llamadas de los dispositivos móviles que tienen la APP y por parámetro, se le dice al Servicio Web qué Query debe ejecutar y se le pasa los parámetros. El Servicio Web ejecuta la query, captura los datos y devuelve a la APP los resultados.
No se si esto es recomendable, si es ágil y ni si hay formas mucho mejores. Del mismo modo dudo en cómo devolvería el Servicio Web los datos... ¿En json?
En fin... por favor, cualquier ayuda será bien recibida. Gracias.