作者mk130520hytg (XiaoLu)
看板AndroidDev
标题[问题] GPS的Criteria设定问题
时间Mon Dec 30 11:58:10 2013
各位大大好
小弟在写有用GPS定位的程式
但现在出了一个问题
程式我汇出到实机上测试
然後有开GPS和3G网路
可是在定位时发现在捷运站里(地下室)他却无法更新定位
要出来地表才有办法
在程式里每当更新位置时 我是用toast的方式来显示最新的经纬度
而更新的条件是用这个 requestLocationUpdates(bestProvider, 1000, 10, this)
理论上会一直更新才对 但就是在地表下无法 当然GPS和网路都还是可以用的(Google map
都可以成功定位正确)
而在精准度的设定方面 我的Criteria设定如下
lms = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setHorizontalAccuracy(Criteria.ACCURACY_HIGH);
criteria.setVerticalAccuracy(Criteria.ACCURACY_HIGH);
bestProvider = lms.getBestProvider(criteria, true);
Location location = lms.getLastKnownLocation(bestProvider);
实在不知道为何在地表下无法定位
是因为我要求精准度太高所以当无法确定很精准时就不会去更新位置吗?
还是其他的?
不太知道在内部Android是如何判断其精准度和选择精准的定位位置
恳请大大为我解惑
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.116.131.173
1F:→ k70709:有考虑过在地下室时,能不能收到GPS讯号吗? 12/30 15:11
2F:→ k70709:你可以找看看有没有显示GPS 讯号的App 12/30 15:22
3F:→ k70709:在我的印象中 GPS讯号是太空卫星透过微波的方式传递到地表 12/30 15:23
4F:→ k70709:所以地下室可能收不到卫星讯号而定不到位(需3颗卫星的讯号 12/30 15:25
5F:推 CAnthony15:其实........你要不要走出捷运站再试试看~ 12/30 16:22
6F:→ mk130520hytg:就是走出捷运站才收的到喔(文中有提到0...0 12/30 23:10
7F:→ mk130520hytg:如果收不到GPS讯号~那有没有办法在地表下也可以定位 12/30 23:11