作者cavitylapper (狼子野心)
看板AndroidDev
标题[问题] 如何侦测室内或室外(GPS provider)
时间Sat May 4 13:08:11 2013
以下都是设定中的GPS有开启但AGPS(network provider那个)没开的状况
当在室内的时候 直接对GPS provider要location
会拿到null 这个...没有问题...
可是
若这支手机曾经在室外使用过 GPS provider 并成功定到位
然後这支手机移动到室内後
再去跟GPS provider要location
反而不是null了 而是会一直拿到室外定位得到的位置
这似乎是因为我使用的是getLastKnowLocation的关系
但我不知道有没有其他的方法取得座标或侦测这样的状况
总之 这样跟我要的结果不太一样...
我原本是希望 "若使用者到室内後 显示GPS无法使用"之类的
我有考虑过使用getTime来用 不过这样的话变成是我要自己决定一个timeout
有没有更好的办法呢??
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.231.4.56
1F:推 arenda:.isProviderEnabled(LocationManager.GPS_PROVIDER) 这个吗 05/04 14:39
2F:→ cavitylapper:isProviderEnabled没办法侦测移动到室内... 05/04 15:52
3F:→ gpc:拿精确度 DOP? 05/05 00:39
4F:→ gpc:精确度下降表示移动到市内? 05/05 00:39
5F:推 kingstong:嘿!这不是光数位的技术,包含了类比,就像手机触碰面版一 05/05 14:58
6F:→ kingstong:一样,然後手机感应到再转数位 05/05 14:59
7F:推 priv:直接抓卫星呢 05/05 21:38
8F:→ cavitylapper:要怎麽直接抓卫星呢?? 05/05 22:28
9F:→ cavitylapper:我好像没看到相关的api或method 05/05 22:28
10F:→ priv:参考看看 GPS_EVENT_SATELLITE_STATUS 和 getSatellites() 05/05 22:41
11F:推 kingstong:卫星能抓到房子这样的精准度吗?!小心喔,这已经是国防科 05/06 11:55
12F:→ kingstong:技的程度了喔,美国有用飞弹搭卫星定位去搞狙杀喔!只是 05/06 11:56
13F:→ kingstong:上面搭载的只是一般火药而已 05/06 11:57
14F:→ f1234518456:民用的有放到这麽精密的精准度吗... 05/06 11:59
15F:→ lovelycateye:LocationListener.onStatusChanged 这个踹踹? 05/06 14:27
16F:→ priv:民用误差 10M 05/06 18:02
17F:→ cavitylapper:k大好像做了过多的联想了XD 05/06 20:43
18F:→ cavitylapper:另外 抓卫星理论上可行 可是我实做後不管怎样一直都 05/06 20:44
19F:→ cavitylapper:只抓到0颗 明明经纬度都定到了orz 05/06 20:44
20F:→ cavitylapper:查到的范例都要用GpsListener 我想直接读不行吗= =? 05/06 20:45
21F:→ cavitylapper:另外 onStatusChanged我也曾经考虑过 05/06 20:45
22F:→ cavitylapper:可是 0,1,2这三个status我找不到文件说明什麽时候会 05/06 20:46
23F:→ cavitylapper:变化... 05/06 20:46
24F:→ cavitylapper:现在只好先暂时用time out了.... 05/06 20:46
25F:推 charlesdc:0颗可能是指可视线15度角以上的0颗 你换时间再试试 05/07 00:41
26F:→ charlesdc:也许啦~~XD 05/07 00:42
27F:→ charlesdc:要注册事件是因为GPS还没定位完怎麽会有座标哩? 05/07 00:43
28F:→ charlesdc:当然是收他call back的method阿 05/07 00:43
29F:→ charlesdc:另外某K说的事不会发生 军用频道是加密的 05/07 00:44
30F:→ charlesdc:一般的接收晶片也接生不到军用频道的讯号 05/07 00:45