如果我无法获得任何gps修复位置,如何通知我?

时间:2010-01-18 04:57:26

标签: android

例如,我在一个建筑物内,我希望以0.75(Criteria.ACCURACY_FINE)的准确度获取我的位置,如果我的gps打开,这将使用gps。因为我在建筑物内,所以gps不起作用。

如何确定是否真的无法获得gps修复位置?

即使在使用onLocationChanged(Location arg0)时未收到gps修复位置,也会调用LocationListener吗?

是否可以在请求gps位置时使用超时,以便我可以转移到网络作为位置提供者,如果我无法获得任何位置?

1 个答案:

答案 0 :(得分:2)

我看到三种基本可能性:

  1. 设置LocationListener,然后 根据调用来确定它 onStatusChanged。我关心的是 我不确定android有多好 能够确定差异 在OUT_OF_SERVICE和。之间 暂时不可用。我会 希望它基于信号 力量,但它可能是一些东西 测试。
  2. 只需听听两者。如果你还没有 从(更准确)gps提供商那里听到 在一定时间内,然后切换到 不太可靠的方法。这可能消耗更多电力 由于需要监控多个位置源 同时,但可能是最可靠的方法。
  3. 上面的1和2的混合(gps,但如果暂时没有结果,则切换到本地)......这可能是最有效的,但更难以实现。