我正在创建一个请求用户位置的 BREW 应用程序。
如果手机无法获取位置,我想显示错误。
在我确定手机不可能获得 GPS 定位之前,我应该等待多长时间来回拨电话?
我正在创建一个请求用户位置的 BREW 应用程序。
如果手机无法获取位置,我想显示错误。
在我确定手机不可能获得 GPS 定位之前,我应该等待多长时间来回拨电话?
当需要冷启动时,接收器必须下载全套星历数据,这些数据从 GPS 卫星以 30 秒的周期广播,每 30 秒重新传输一次。
所以我会说 60-90 秒(两个或三个 Ephemeris 周期)是在宣布失败之前等待的合适时间。
http://www.navigadget.com/index.php/gps-knowledge/ttff-time-to-first-fix
请注意,如果设备需要下载年历,启动时间可能会更长(大约 12.5 到 15 分钟)。这被称为工厂 TTFF(首次修复时间)。
45-90 秒。
有关更多信息,请参阅 Wikipedia 上的 GPS首次修复时间文章。
但是你永远无法知道用户何时真正看到卫星,也许他们在启动程序时还在里面,所以 Matthew Vines 建议的方法比持续延迟要好得多。
我可能会在通知用户您未能建立链接和让他们选择停止尝试之间增加(比如 20 或 30 秒)。坚持下去,直到他们阻止你,或者经过一定数量的迭代(比如 5 到 10 次迭代)。
特别是手机,我有一部带有 GPS 接收器的摩托罗拉手机,但它非常糟糕——它可能需要大约 5 分钟才能得到修复,而我的独立蓝牙接收器可以在不到一分钟的时间内完成。
为什么在固定超时后仍然声明失败?为什么不呢,在经过一段合理的时间(比如一分钟)之后,显示一条“GPS 定位仍然不可用;但我仍在尝试”的消息,如果用户吃饱了,可以随时取消向上?您希望用户如何处理您建议给他的失败消息?