2010-12-12 14 views
4

Je me demandais quelle approche est recommandée pour stocker une matrice d'objets CLLocation (formant une route ou un chemin) dans une base de données Core Data? La sérialisation est-elle une bonne approche ou recommandez-vous de stocker les objets CLLocation dans un modèle séparé ayant un lien avec un modèle "route"? Le problème avec la sérialisation de la matrice d'emplacements est que vous n'avez pas un accès facile aux emplacements individuels. D'autre part, le stockage de chaque emplacement de la route/du chemin en tant qu'entrée séparée dans la base de données semble aboutir à une base de données volumineuse et peut entraîner des performances lentes.Stocker les données de localisation à l'aide des données de base

Je suis curieux d'entendre vos suggestions.

Bart

Répondre

0

La solution qui convient le mieux à mes besoins est de stocker les données de localisation double en stockant la latitude et la longitude séparément. La recherche est légèrement plus complexe en conséquence, mais cette approche semble mieux que toute autre approche que j'ai rencontrée jusqu'à présent.

je dois noter qu'il ya des rapports des développeurs qui ont des problèmes avec cette approche en termes de problèmes avec la précision (chiffres significatifs) lors de la récupération des données stockées. This thread est un exemple.

1

Pour une d'une application que j'ai code, je les ai stocker à une chaîne comme décrit dans l'API Google map.

http://code.google.com/apis/maps/documentation/directions/

Polyline algorithm

+0

Merci Charles. Je vais certainement vérifier cela. –

+0

Le problème est que vous ne pouvez pas interroger correctement les données de localisation si vous les stockez en tant que chaîne. Ma solution pour le moment est de stocker les données de localisation sous forme de données binaires et de stocker un proxy à des fins de recherche. –