-
Connexion bdd - Avis
Bonjour à tous,
j'envisage de créer pour un site internet en ligne actuellement une application android.
En terme de fonctionnalités (et dans le cas de mon site) je ne vois pas en quoi une appli serait un plus par rapport à un site mobile.
Mais j'ai décidé de me lancer dans le dev mobile et commencer par une appli pour ce site peut-être pas mal pour découvrir je truc je pense.
Je suis développeur web et java mais j'ai encore jamais vu le jdk android, mais ce n'est pas génant pour ma question puisque c'est une question d'architecture et pas de dev.
La question que je me pose est la suivante : comment optimiser la connections à ma bdd depuis l'appli.
J'imagine que je peux m'y connecter directement, mais ça j'ai pas trop envie, ça impliquerait que le login et le mdp de la bdd soit mis dans l'appli....grosse faille ^^
J'ai penser faire des requêtes http vers mon serveur web et ensuite parser le résultat retourné mais ça me parait super fiable finalement.
J'ai enfin penser à mettre en place un webservice qui répondrait aux interrogation de mon appli...mais la pour le coup ça me parait un peu lourd non? Le gros avantage c'est que si je fais des changements ds ma base, c'est complètement transparent pour l'appli.
Je vois pas d'autres solution, laquelle est la meilleure selon vous?
Je penche pour le webservice même si j'en ai jamais utilisé auparavant mais j'aimerai avoir votre avis de spécialiste...
Merci
-
Tu ne peux pas te connecter directement à la base de données via ton application, il faut faire des requêtes HTTP.
Personnellement, j'utilise PHP pour me générer du JSON que je parse grâce à des méthodes disponible en JAVA.
Après il faut voir si ce que tu importes dans ton application est lourd ou pas. Car tu peux utiliser la BDD SQLite d'Android pour stocker ce que tu as sur ton serveur vers le téléphone. Je fait çà pour mon application actuellement pour qu'elle puisse fonctionner même sans internet et pour des questions de rapidité.
-
Le webservice est la bonne solution. Comme tu le dis il te permet de rendre transparent pour l'appli les éventuelles modifications de contenu/structure. Le gros avantage c'est que tu vas développer 1x un webservice que tu pourras réutiliser ensuite pour une éventuelle appli iphone ou windows phone par exemple.
Après coté développement du webservice , il existe plein de solutions. Tu peux faire quelque chose de très standard en te basant sur SOAP ou REST ou alors quelques chose 100% perso.
-
Ok merci pour ces retours.
Je vais me mettre aux webservice alors:) Je vais regarder du côté de Rest ca semble assez simple avec symfony2
Merci!