Die "beste" Art der Aufbewahrung hängt davon ab, was Sie damit machen wollen:
- Wenn Sie die "gleiche" CLLocation wollen, serialisieren Sie sie. NSKeyedUnarchiveFromData ist in Ordnung.
- Wenn Sie nur nach Breiten- und Längengraden suchen wollen, speichern Sie diese als Doppelwerte (und aktivieren Sie das Kontrollkästchen "indiziert").
Es gibt eine Reihe zusätzlicher Eigenschaften, die Sie speichern bzw. wiederherstellen können, wenn Sie dies manuell tun (Höhe, horizontalAccuracy, verticalAccuracy, Zeitstempel). Es gibt einige weitere, die man nicht speichern kann (Geschwindigkeit, Kurs); CLLocation bietet keine geeignete init-Methode und die Eigenschaften sind schreibgeschützt.
All diese zusätzlichen Eigenschaften sind nützlich, wenn Sie einen Track aufnehmen wollen. Die Höhe ist nützlich, wenn Sie einen POI in bergigem Gelände aufzeichnen ("wir müssen noch 100 m aufsteigen"). Die horizontale/vertikale Genauigkeit kann verwendet werden, um darzustellen, wie groß der POI ist (z. B. könnte eine Stadt eine "horizontale Genauigkeit" von mehreren km haben und als großer Kreis angezeigt werden).