0

Je travaille sur une application multi-plateforme "occasionnellement connecté". Chaque instance de l'application stocke un "cache" des données qu'elle récupère du nuage, qui possède le magasin de données faisant autorité. Ainsi, au démarrage, l'application vérifie si son cache est obsolète et, le cas échéant, télécharge le delta à partir du cloud. C'est certainement faisable dans WP7. Ce que je ne sais pas comment faire est d'envoyer toutes les modifications apportées par l'application dans le nuage. Lorsque l'utilisateur quitte l'application, dans iOS ou Android, je lance une tâche en arrière-plan pour retransmettre le delta vers le cloud, mais avec wp7, sans cette fonctionnalité d'arrière-plan, je dois transmettre de près, et je ne peux pas garantir la transmission se terminerait avant que l'OS ne tue mon application. Est-ce que ce n'est pas réalisable sur WP7 aujourd'hui?WP7 - Comment synchroniser avec un service Web?

Répondre

1

Voici quelques options que vous pouvez appliquer indépendamment ou les deux.

Vous pourriez avoir une conversation plus bavarde avec votre serveur .. c.-à-d. Communiquer les changements tels qu'ils sont acceptés par l'utilisateur.

Vous pouvez également exécuter un processus d'arrière-plan pendant que votre application s'exécute et envoie des modifications à intervalles réguliers.

Il se peut que les modifications ne soient pas envoyées et que l'application ne fonctionne plus. Ceux-ci seront ramassés la prochaine fois que l'application est en cours d'exécution. Je suppose que vous pourriez décrire cela comme une base de meilleur effort.

+0

La première option est un mauvais ajustement pour mon cas, l'utilisateur pourrait éventuellement accepter les changements une fois par seconde, et ce serait juste un peu trop bavard (et l'enfer sur mon serveur). La deuxième option est plausible, mais puisque l'application sera fréquemment utilisée sur plusieurs appareils, il sera difficile de trouver un équilibre entre "mises à jour trop fréquentes et bavardes" et "bonne chance de ne pas synchroniser un gros morceau de données, puis créer un conflit lorsqu'un autre périphérique est utilisé. " Donc, il semble que pour l'instant, wp7 est un choix entre une mauvaise implémentation et aucune implémentation du tout. Merci pour les commentaires! – tempy

+0

Pourriez-vous élaborer sur les types d'interactions qui se déroulent dans votre application? Y a-t-il différentes mises à jour de natures différentes ... certaines sont toujours faites, d'autres parfois? Certains faits fréquemment, d'autres rarement? Des transitions de pages ont-elles lieu pendant l'utilisation de l'application? –

+0

Son essentiellement un entraîneur de vocabulaire - les utilisateurs "pratiquent" une carte flash et ils peuvent aussi écraser leur collection de cartes mémoire - de sorte que les pages sont essentiellement deux - un "éditeur de carte flash" et un écran d'entraînement. Quand une carte flash est pratiquée, les détails pertinents de celle-ci doivent être synchronisés, ainsi que toutes les modifications apportées aux cartes mémoire. La modification de la carte mémoire sera probablement relativement peu fréquente, et un utilisateur pourrait "pratiquer" une carte flash une fois toutes les quelques secondes. – tempy

Questions connexes