Android中更快的GPS修复

Mar*_*nov 7 gps android

我注意到像GPS Status这样的应用程序可以很快得到修复.当我尝试在自己的应用程序中修复它需要更多时间.有人知道为什么会这样吗?他们是否使用API​​的隐藏部分来强制GPS更快地连接?

这是我使用的

LocationManager loc = (LocationManager) context
            .getSystemService(Context.LOCATION_SERVICE);
loc.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,
            listener);
Run Code Online (Sandbox Code Playgroud)

我希望GPS尽可能频繁地给出结果,因为我需要它用于AR应用程序:)虽然我为更新频率设置了1000毫秒和1米的设置,但修复速度没有可察觉的差异.

Dav*_*ave 5

可能是以下几种方法之一:

  • 使用LocationManager.getLastKnownLocation(考虑到有多少应用程序使用位置数据,如果不准确,通常应该'足够接近'.)
  • 使用LocationManager.NETWORK_PROVIDER而不是LocationManager.GPS_PROVIDER立即进行粗略修复,然后使用GPS进行精炼(如果可用).
  • 在后台运行服务,定期获取最新位置并缓存它(基本相同LocationManager.getLastKnownLocation,但是自己动手)