【问题标题】:Learning the difference between Parse Geopoint and CoreLocation学习 Parse Geopoint 和 CoreLocation 之间的区别
【发布时间】:2015-01-03 12:06:57
【问题描述】:

我是编程新手并尝试快速学习,尽管我现在正在尝试扩展位置服务以及如何访问用户位置。

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

提前致谢。

【问题讨论】:

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


    【解决方案1】:

    来自文档

    Core Location 框架的目的定义为:

    核心位置框架可让您确定与设备关联的当前位置或航向。该框架使用可用的硬件来确定用户的位置和方向。

    PFGeopoint的用途定义为:

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

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

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

    这将在底层使用 CoreLocation 来获取代表当前设备当前位置的 PFGeoPoint。如果最终您希望在地图上绘制这些点,那么您真正要寻找的是代表当前用户的一对数字、一个纬度和一个经度。您可以通过上述方法通过 Parse(每个 PFGeoPoint 对象都有一个纬度和一个经度)或直接使用 CoreLocation(每个 CLLocation 有一个具有纬度和经度的 CLLocationCoordinate2D 对象)来获得此信息。

    希望这能让您指明正确的方向。我知道文档一开始可能会让人望而生畏,但请坚持下去,不要害怕它们,您阅读和探索的次数越多,这一切就开始变得有意义了。

    【讨论】:

    • 感谢您的评论,这有帮助。我知道他们都做了同样的工作我只是不确定我是否打算同时使用两者,或者如果一个比另一个更准确等等。谢谢你的帮助。
    猜你喜欢
    • 1970-01-01
    • 2014-08-14
    • 2019-02-19
    • 2022-07-27
    • 1970-01-01
    • 2011-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多