0

Blackberry API 是否提供任何方法来确定哪一个,GPS或者Geolocation在当前情况下更好(根据信号级别、网络带宽和任何其他环境属性)?

4

1 回答 1

4

您可以使用许多不同的算法来确定要使用的最佳定位模式。

一个经过良好调整的算法必须考虑到诸如

  • 您的用户需要多快进行位置修复?
  • 修复需要多准确?它只是用于查找附近的电影院,还是用于导航的修复(需要非常准确)?
  • 你在哪个移动运营商上?GPS 结果可能与运营商无关,但其他地理定位技术将取决于运营商及其基础设施(假设您使用的是蜂窝网络,而不是 Wi-Fi)
  • 是否有任何理由需要限制网络传输(例如,对于计量数据计划,您经常更新位置)?
  • 电池使用有多重要?
  • 您的目标是哪个 BlackBerry OS 版本?

我确定我遗漏了一些其他因素,但希望您能看到这不是一个简单的问题,可以在不了解您的应用程序和网络部署的情况下解决。

此外,这种用于 BlackBerry (Java) 应用程序的算法传统上需要大量工作来优化。因此,许多开发人员(或客户)会认为这是一个严密保护的商业机密。因此,可能很难找到有人发布他们的算法(但问一下也无妨,对吧?)。

也就是说,您至少可以看看BlackBerry Simple Location API,它是一种基本算法的开源实现,可以在 GPS 和地理定位模式之间进行选择(如果您允许它同时使用这两种模式)。来自 Javadocs(对于 Optimal 模式):

根据可用性在地理定位和 GPS 模式下运行。第一个修复在地理定位模式下计算,后续修复在独立模式下计算。但是,如果独立模式失败,则暂时回退到地理定位模式,直到经过一定的等待期后在独立模式下尝试重试。见setRetryFactor(int)

对于对 的单个修复调用getLocation(int),首先使用地理定位模式,如果地理定位模式失败,则回退到独立模式。

我看到你在白俄罗斯,但我不知道你的客户或用户在哪里。如果他们在美国,如果您的应用支持 Verizon 网络,您可能还需要考虑使用Nav Builder Inside之类的地理定位工具。

无论如何,我知道这可能不是您想要的答案,但也许这是一个开始?

于 2013-02-20T02:18:01.810 回答