Question

J'essaie d'extraire les informations de contact des appareils Android et de les synchroniser avec le carnet d'adresses dans osx. Fondamentalement, un mécanisme de synchronisation directe d'un appareil à l'autre sans l'utilisation d'un compte Google nécessaire. Jusqu'à présent, j'ai réussi à exécuter un serveur de socket du côté osx et à publier son service via bonjour qui peut être découvert et contacté depuis le téléphone Android. J'utilise également un syncadapter du côté Android pour fournir la fonctionnalité de synchronisation.

Jusqu'à présent, la configuration et l'idée, ma question est maintenant, quel serait le meilleur choix en termes de stockage et de communication des données?

Sur Android, les contacts sont stockés dans une base de données sqlite, qui peut être interrogée. (En fait, trois tableaux pour obtenir l'ensemble des informations Contacts.Contract.Data ..RawContacts et ..Contacts) Le carnet d'adresses est facilement accessible via AddressBook.framework. Je ne suis pas sûr de savoir comment obtenir une structure de données commune pour une synchronisation efficace et fiable. Est-ce un meilleur choix de travailler sur la base de données sqlite, ou de prendre une vCard comme objet de données commun à synchroniser ou est-il préférable de convertir les données Android en objets de données de base et de les synchroniser? Les conseils et commentaires sont très appréciés. Peut-être que je pense aussi beaucoup trop compliqué ...

Était-ce utile?

La solution

Le format vCard a été conçu comme un moyen de transporter des contacts afin qu'il puisse fonctionner.Il me semble, cependant, qu'à moins que les SDK OS X et Android ne fournissent un moyen simple de travailler avec vCard, il serait plus facile de définir votre propre format XML.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top