了解Parse Geopoint和CoreLocation之间的区别

时间:2015-01-03 12:06:57

标签: ios xcode swift parse-platform core-location

我是编程和尝试学习swift的新手,虽然我现在正在尝试拓宽位置服务以及如何访问用户位置。

我正在创建一个应用程序,我使用Parse后端来存储用户,我还希望它存储用户位置,然后能够将这些用户位置作为注释投影到地图上。那里有很多文档,这些文档可能非常庞大,它们向您展示了如何使用Parse geopoint和coreLocation获取用户位置。如果有人可以帮助解释使用每一个的实际好处以及如何/为什么我可以使用它可能在我想要实现的目标?

提前致谢。

1 个答案:

答案 0 :(得分:3)

来自文档

核心位置框架的目的定义为:

  

Core Location框架可让您确定与设备关联的当前位置或标题。框架使用可用的硬件来确定用户的位置和标题。

PFGeopoint的目的定义为:

  

PFGeoPoint可用于嵌入纬度/经度点作为PFObject中键的值。它可以用于使用[PFQuery whereKey:nearGeoPoint:]以地理空间方式执行查询。

CoreLocation是一个框架,PFGeoPoint是一个类。这就是说,广泛的CoreLocation是一套工具,用于与设备的硬件接口,并询问它有关它的当前位置(它在哪里,它面向的方向)和类的问题提供这些服务。另一方面,PFGeoPoint是Parse框架的一部分,用于与Parse接口并存储/查询您的Parse后端以获取地理信息。 Parse提供了一种connivence方法:

+ (void)geoPointForCurrentLocationInBackground:(void ( ^ ) ( PFGeoPoint *geoPoint , NSError *error ))geoPointHandler

将使用CoreLocation来获取代表当前设备当前位置的PFGeoPoint。如果您最终想要在地图上绘制这些点,那么您真正想要的是一对代表当前用户的数字,纬度和经度。你可以通过Parse通过上面的方法得到这个(每个PFGeoPoint对象都有一个lat和一个lon),或直接使用CoreLocation(每个CLLocation都有一个带有lat和lon的CLLocationCoordinate2D对象)。

希望你能指出正确的方向。我知道这些文档起初可能令人生畏,但要坚持下去并且不要害怕它们,所有这一切都开始变得有意义,你阅读和探索的越多。