为什么我不能在偏远的地方获得GPS坐标?

时间:2012-02-04 07:01:54

标签: android gps

我去远程旅行,我没有移动访问,但我认为我的GPS无论如何都会工作,因为GPS发射器只依赖于卫星。我有以下代码来获取GPS位置:

mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
mlocListener = new MyLocationListener();
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

我试图记录我的GPS坐标,结果是空的。

有什么东西我做得不对或我不明白吗?

我可以更改哪些内容,以便我的手机可以在有或没有网络访问的情况下记录原始GPS数据?

1 个答案:

答案 0 :(得分:4)

GPS接收器需要在地平线上方有几颗GPS卫星,以便接收用于计算其经度和纬度的信号。每个卫星都将这个星历信息作为其数据流的一部分进行广播,但是一个独立的接收器可能需要几分钟来扫描“冷启动”的可用卫星频率(其中缓存的星历信息已过期或当前位置不正确) 。

手机上的GPS接收器通常实现“载波辅助GPS”,蜂窝网络不时将最新的GPS卫星星历表推送到手机,因此手机已经知道哪些卫星在任何给定的时间/地点,无需进行搜索。

如果您没有蜂窝网络访问权限,您的手机可能会被编程为回退到卫星逐个搜索可用信号,并且可能需要更长时间才能获得第一次GPS修复(如果它可以获得一个所有没有运营商协助)。