2012-11-28 6 views
1

J'ai donc une application qui enregistre les données médicales saisies par l'utilisateur. J'ai besoin d'ajouter des fonctionnalités pour sauvegarder et restaurer ces données au cas où l'utilisateur change son téléphone Android OU passe à l'iPhone (il y a une version iPhone de cette application, dans laquelle j'ai une visibilité limitée). Les données sont actuellement stockées dans une base de données SQLite sur le périphérique.Sauvegarde/restauration de données d'application

J'ai besoin d'aide pour trouver le moyen le plus propre/le plus facile de le faire. Jusqu'à présent, je pense à ces options:

  1. ajouter une interface utilisateur pour envoyer un fichier DB à l'interface utilisateur + pour accepter un fichier DB et le copier sur la base de données actuelle. Semble hacky.
  2. créer un service Web qui va stocker les données utilisateur et la synchronisation sur l'arrière-plan. Je devrais construire le processus de synchronisation et introduire une sorte de système de compte. Cela semble être un peu de travail, mais probablement la solution la plus flexible à long terme.
  3. passer à Google Agenda comme stockage de données (les données sont essentiellement un ensemble d'entrées d'événements de toute façon). Ce serait probablement le plus transparent, mais l'option iPhone est hors de la fenêtre.

Y a-t-il d'autres avantages/inconvénients à ces options qui me manquent? Ou peut-être y a-t-il des solutions standard à cela?

+0

# 2: Cela peut être fait avec de nombreux services existants, tels que SkyDrive ou DropBox. Cela nécessite que l'utilisateur dispose bien sûr d'un compte Dropbox, mais pas de problème s'il ne dispose pas déjà d'une configuration. Assurez-vous de crypter les données de sauvegarde avant de les retirer de l'appareil. – joeking

Répondre

0

L'option 1 est remplie de nombreux problèmes. Sideloading bases de données à partir de fichiers provenant de sources externes n'est pas une tâche facile. Je ne le recommanderais pas.

L'option n ° 3 devrait être une possibilité - mais elle nécessite que l'utilisateur établisse un compte Google qui (imho) ne devrait pas être requis. De plus, l'ajout d'un nouveau calendrier et/ou d'un grand nombre d'événements ne serait pas une fonctionnalité préférée de nombreux utilisateurs. Personnellement, je le détesterais.

La deuxième option semble la plus prometteuse. Vous pouvez le construire aussi simple que vous le souhaitez. Vous pourriez même le faire exiger seulement un code d'identification simple pour sauvegarder - ou seulement fournir la synchronisation «en direct». Il est vrai que vous avez besoin d'une sorte de serveur et de système de comptabilité - mais ces choses viennent comme les normes et les serveurs sont bon marché. Cette option serait celle de mon choix.

Questions connexes