|
Fichiers Android et mises à jour... |
Iniciado por Thierry VS, fev., 10 2014 10:28 AM - 3 respostas |
| |
| | | |
|
| |
Membro registado 17 mensagems |
|
Publicado em fevereiro, 10 2014 - 10:28 AM |
Bonjour à tous,
Actuellement je réside au Cambodge et travaille en tant que bénévole pour une ONG qui tient une restaurant du cœur pour les enfants des rues à Phnom Penh. Dans ce cadre, j’ai écris une application pour une tablette Android avec Windev Mobile 18 lorsque j’étais en Europe. Cette application tient le fichier des enfants à jour et leur permet de « pointer » à leur arrivée au restaurant. Cela permet de suivre chacun d’eux et de planifier certaines visites médicales et de suivre leurs besoins.
Rien de bien complexe et cela fonctionne bien.
Seulement, je n’ai pas prévu que les connexions à internet sont vraiment aléatoires au Cambodge (coupures et lenteurs parfois désespérantes). Pas conséquent, le programme fonctionnel en Europe est non opérationnel ici au Cambodge car les temps de réponses sont incroyablement longs ou l’accès à la base de données est simplement impossible.
Je ne suis pas très familier avec la gestion des bases de données avec Windev mobile et PC soft propose une formation par vidéo conférence. Malheureusement le prix proposé est totalement inadapté au niveau de vie du pays. Un jour de formation correspond au salaire moyen annuel d’un habitant. Donc, je ne peux pas poursuivre cette piste.
Je fais donc appel aux bonnes volontés pour recevoir un coup de main.
La base de données existante est composée de fichiers HFSql client/serveur avec une connexion sur un site distant (logée avec le site web de l’ONG). Idéalement il faudrait un fichier local qui se mettrait à jour quand une connexion internet est disponible. Voici plusieurs jours que je tente de trouver une réponse claire en interrogeant Internet, mais je suppose que le soleil me ramolli le cerveau car après plusieurs tentatives je tourne en rond.
Quel type de fichier local utiliser ? SQlite, HFSql ? Comment synchroniser les fichiers ? Réplication, synchronisation ? Comment mettre cela pratiquement en œuvre ? Comment intégrer cela dans l’analyse ? Comment définir tous ces paramètres dans l’analyse ? Cela est-il automatique avec l’utilitaire de réplication ?
Ces questions doivent sembler basiques à certains d’entre vous et sans doute que l’un ou l’autre point n’est pas très clair dans mon esprit….
Quelqu’un pourrait-il m’expliquer clairement la meilleure démarche à suivre (avec un petit exemple si possible), car je patauge lamentablement en mélangeant toutes ces notions.
Merci d’avance à ceux qui consacrerait un peu de leur temps à cette bonne cause.
Thierry
Windev 18 et Windev Mobile 18, tablette Androïd et pas de PC Serveur sur place, uniquement une tablette et Internet en WiFi. (enfin parfois) |
| |
| |
| | | |
|
| | |
| |
Publicado em fevereiro, 10 2014 - 1:00 PM |
Bonjour Thierry
Voila quelques réponses :
> Quel type de fichier local utiliser ? SQlite, HFSql ?
Peut importe, j'ai une préférence sur HFSQL (si l'os de la tablette le permet) vu que l'on dispose alors de la modif automatique des fichiers en cas de changement de l'analyse.
Comment synchroniser les fichiers ? Réplication, synchronisation ?
Normalement, on mets en place un webservice sur le serveur et on l'appelle depuis le mobile
> Comment mettre cela pratiquement en œuvre ?
Il y a plusieurs moyens... Personnellement, je préfère un webservice consistant d'une page awp (webdev - le serveur gratuit 10 connexions suffit) avec le client qui "appelle" avec des httprequete. On peut aussi faire un webservice de type SOAP, bien sur, mais on a moins le contrôle sur ce qui se passe.
Comment intégrer cela dans l’analyse ?
Encore une fois, plusieurs possibilités, et ca dépend surtout des besoins... Ce que je fais le plus souvent est d'ajouter un fichier "log" dans mon analyse... Chaque fois que j'écris dans un fichier (ajout, modification, suppression, etc), j'écris aussi l'info dans mon log (dans un champ mémo texte, organisé comme un fichier ini: NomChamp=Valeur).
Ce système me permet d'écrire soit un enregistrement complet, soit juste un champ (et donc de synchroniser au niveau souhaité).
Ensuite, le module de réplication lui même fait ca : - connexion au serveur, identification (avec user/mot de passe, encryption, etc, etc) BOUCLE - vérif du dernier enreg de log envoyé (on conserve l'ID) - préparation d'un fichier texte contenant N enregistrements (ou envoit enreg par enreg, mais c'est moins optimisé, au niveau transfert) - envoit des données - écriture de l'ID du dernier enreg envoyé et traité par le serveur FIN BOUCLE BOUCLE - demande au serveur des infos à downloader - insertion dans la base locale et renvoit au serveur du OK correspondant FIN BOUCLE
bien sur, le serveur maintient un fichier log identique, écrit ce qu'il reçoit des clients dans le fichier log ET les vrais fichiers, et conserve les derniers ID du fichier log pour chaque client...
Voila, j'espère que ca t'aidera un peu
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Plus d'information sur http://fabriceharari.com
Comment définir tous ces paramètres dans l’analyse ? Cela est-il automatique avec l’utilitaire de réplication ?
Ces questions doivent sembler basiques à certains d’entre vous et sans doute que l’un ou l’autre point n’est pas très clair dans mon esprit…. Quelqu’un pourrait-il m’expliquer clairement la meilleure démarche à suivre (avec un petit exemple si possible), car je patauge lamentablement en mélangeant toutes ces notions.
Merci d’avance à ceux qui consacrerait un peu de leur temps à cette bonne cause.
Thierry
Windev 18 et Windev Mobile 18, tablette Androïd et pas de PC Serveur sur place, uniquement une tablette et Internet en WiFi. (enfin parfois) |
| |
| |
| | | |
|
| | |
| |
Membro registado 17 mensagems |
|
Publicado em fevereiro, 11 2014 - 11:21 AM |
Merci Fabrice,
cela me semble effectivement réalisable, bien que je vais devoir étudier pas mal pour réussir.
Sans doute suis-je naïf, mais l'utilitaire de réplication fourni par PC Soft ne peut-il pas faire l'affaire (outil - Réplication). Cela me semble effectvement ce dont j'ai besoin mais j'éprouve des difficultés à le mettre en place. A chaque fois que je configure une réplication, le programme réclame des fichiers .srp alors que la réplication est existante.
As-tu déjà utilisé cet utilitaire? |
| |
| |
| | | |
|
| | |
| |
Publicado em fevereiro, 11 2014 - 3:14 PM |
Bonjour Thierry
je l'ai testé et viré très rapidement... Utiliser une boite noire pour faire de la réplication n'est valable que si la boite noire est parfaite... Autrement, au premier problème, on ne sait pas quoi faire car on n'a malheureusement aucune information détaillée...
Pour toi, c'est des fichiers qui manquent, pour d'autres (voir forum, recherche "replica") c'est ...
Donc, non, pour moi, ca ne fait pas l'affaire, les données de mes clients sont trop précieuses... Mais ca n'est bien sur que MON avis personnel
Cordialement
-- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International
Plus d'information sur http://fabriceharari.com
On 2/11/2014 5:21 AM, Thierry VS wrote:
Merci Fabrice,
cela me semble effectivement réalisable, bien que je vais devoir étudier pas mal pour réussir.
Sans doute suis-je naïf, mais l'utilitaire de réplication fourni par PC Soft ne peut-il pas faire l'affaire (outil - Réplication). Cela me semble effectvement ce dont j'ai besoin mais j'éprouve des difficultés à le mettre en place. A chaque fois que je configure une réplication, le programme réclame des fichiers .srp alors que la réplication est existante.
As-tu déjà utilisé cet utilitaire? |
| |
| |
| | | |
|
| | | | |
| | |
|