一般Android GPS行为

时间:2011-03-30 22:31:47

标签: android

我即将开始使用位置服务,但对于如何在Android中使用GPS接收器存在一般性问题。在设备上启用GPS时,它是否立即处于活动状态(即获得卫星修复),或仅在应用程序请求位置更新时才处于活动状态?

我问的原因是因为我对各种个人GPS装置的体验是,当你第一次激活它们时,它会在被锁定之前有相当长的时间滞后并找出它的位置(我的Garmin Forerunner可以带一个有时需要几分钟来修复。

那么Android如何获得初始GPS锁定,即使应用程序仅在几分钟内获得位置更新,它是否可以保持锁定?在第一次排名通知之前,应用程序通常会遇到很长的时间差吗?

4 个答案:

答案 0 :(得分:0)

获取GPS定位需要一些时间。我相信设备之间的确切时间会有所不同,但不是几分钟。我的使用时间通常只需几秒钟 - 包括Google地图和我的应用。

只有在您明确要求时才会在应用中获得GPS更新。更新的频率取决于初始化LocationListener的参数。如果你打开GPS然后启动你的应用程序,那么这个过程会更快。

如果您想立即开始并且不想等待确切的修复,您还可以获取最后已知的最佳估计值。

答案 1 :(得分:0)

我不知道这是否与你正在使用的设备无关,但Android的行为应该是这样的:

如果启用了GPS,这并不意味着它确实在使用中。启用仅意味着它可以由应用程序或其他任何东西使用。所以你的假设是正确的,接收信号需要一些时间。然而,在我的设备(HTC Desire)上,这通常非常快。但有时候我也注意到需要2-3分钟。但我认为这取决于设备,天气条件,环境(例如大楼附近)以及最后但并非最不重要的宇宙辐射。

我认为最好的解决方案是使用GPSStatusListener检查您连接的卫星数量并检查第一次修复。

答案 2 :(得分:0)

GPS功能与任何其他功能相同,因为获取卫星的滞后时间或等待时间通常为三个或更多是相同的。等待时间取决于你距离最后一个位置有多远> 400英里,它是每颗卫星的视线。

至于GPS更新你的应用程序。阅读有关LocationManager.requestLocationUpdates的信息。您将控制更新位置的方式和时间以及使用位置服务的方式。 GPS的行为与其他任何其他一样,只需记住电池和在Android中定位的时间是主要关注点。您希望自己的应用能够快速响应,并且在锁定和更新方面使用GPS可能会很慢。

答案 3 :(得分:0)

我使用手机的经验是,如果以前关闭GPS功能,初始修复确实需要一段时间。但是,一旦找到修复程序,它会频繁触发onlocationchange事件。