何时调用GPS重置

时间:2015-01-03 10:12:27

标签: android gps

我正在构建GPS应用程序,我想重置GPS以加快修复速度。我正在使用此代码来执行此操作:

locationmanager.sendExtraCommand("gps", "force_xtra_injection", bundle);
locationmanager.sendExtraCommand("gps", "force_time_injection", bundle);
问题是我该什么时候打电话给它?我是否需要启用GPS和Internet连接才能调用此命令?或者网络连接就足够了?或者我可以在任何地方调用它,命令将尽快运行?

先谢谢

2 个答案:

答案 0 :(得分:2)

这是正确的方法:

sendExtraCommand看起来像这样

LocationManager.sendExtraCommand (String provider, String command, Bundle extras)

文档here

用于provider使用 - > LocationManager.GPS_PROVIDER

用于command使用 - > "delete_aiding_data"

用于extras使用 - > null删除所有数据。提供者可以选择使用命令的结果填充附加组件。

返回 如果命令成功,则true

它实际上看起来如何:

locationManager.sendExtraCommand (LocationManager.GPS_PROVIDER, "delete_aiding_data", null)

您可以决定删除所有GPS数据或部分GPS数据。使用许多有用的逻辑检查示例代码 - > HERE

P.S。需要许可android.permission.ACCESS_LOCATION_EXTRA_COMMANDS

答案 1 :(得分:2)

你不需要那个 如果网络连接可用,当启用GPS时,您的设备会自动使用辅助GPS。如果未启用GSM网络或禁用漫游,则需要几秒钟才能下载"援助数据"来自卫星 所以忘了这一切。

加速时有意义的是,只要没有可用的GPS定位,就可以使用虚拟网络位置(例如加载地图数据)。