我想构建一个位置感知应用程序,它可以自动检测用户的位置并向他们展示一个地标数据库中最近地标的排序列表。该应用程序将构建在 iPhone 上。
基本问题是:
- 如何计算到附近地标的距离并按“最近”排序
- 在哪里执行计算 - 通过 Web 服务在外部服务器上 - 或通过 SQLite 数据库和/或核心位置在 iPhone 本身上执行计算
理想情况下,应用程序将使用“路由距离”而不是乌鸦距离(即更大的圆距离公式)来计算距离,这是更准确的方法。当然,随之而来的是成本——计算起来会慢得多。我想知道哪种方法最合适。
此外,在手机本身上执行计算(使用核心位置?)的优点是不需要与服务器交谈(更快),并且可以在没有互联网连接的情况下使用该应用程序。缺点在于难以使地标数据库与最新数据保持同步。
我想知道是否有实现诸如此类的位置感知应用程序的行业标准方法。如果没有,请提出问题的最佳解决方案。