LBS在移动设备和浏览器里已应用地非常广泛,基于API能很轻松地实现一些和地址位置有关的应用,但一直对这些API背后是如何获取使用者的位置信息却不得而知,今天花了时间粗浅地研究了一下:
得到位置信息主要通过两种途径:GPS和WIFI
1. GPS
GPS基本原理是测量出已知位置的卫星到用户接收机之 间的距离,然后综合多颗卫星的数据就可知道接收机的具体位置。要达到这一目的,卫星的位置可以 根据星载时钟所记录的时间在卫星星历中查出。而用户到卫星的距离则通过记录卫星信号传播到用户所经历的时间,再将其乘以光速得到。可见GPS导航系统卫星 部分的作用就是不断地发射导航电文。然而,由于用户接受机使用的时钟与卫星星载时钟不可能总是同步,所以除了用户的三维坐标x、y、z外,还要引进一个 Δt即卫星与接收机之间的时间差作为未知数,然后用4个方程将这4个未知数解出来。所以如果想知道接收机所处的位置,至少要能接收到4个卫星的信号。
由上可知,GPS并不是我原先所想的,GPS设备向卫星发请求,卫星把位置返回的模式。
由GPS的原理可以得知它定位的优缺点:
- 优点:在空旷地区比较准确,覆盖面比较广
- 缺点:需要比较长时间定位,比较耗电池,在室内work不太好,需要GPS设备支持
2. WIFI
Google和Skyhook等一些 Geolocation service provider会在全世界范围内去收集WIFI热点的位置信息,然后用户的设备只要能支持WIFI就能获取到周围WIFI热点的位置和信号强弱信息,然 后把这些信息发给Google或Skyhook,就能得到自己的位置。这其中最为关键的是WIFI热点的位置信息收集。一般有两种方式,一是 provider(如Google)自己开车到世界各地去收集,如下图所示:
城市街道:
三轮车:
室内:
另一种就是通过用户参与的方式,由用户的设备或人工录入来提供位置信息。
各浏览器就是基于WIFI来定位,但所使用的provider却是不同的:
Firefox & Grome: Google
Safari: Skyhook
由wifi定位的原理可以得知它的优缺点:
- 优点:比较准确,适用于室内环境,相应速度快
- 缺点:在wifi热点少的地方不适用
还有一些其他定位方式:
3. IP
IP定位原理很简单,就是通过你设备的物理地址所备案的地址信息来定位,但这种方式很难准确,特别是在基于proxy来上网的情况下,一般作为GPS和WIFI都不支持的情况下大致模糊匹配,比如各大团购网站检测用户所在城市。
4. 手机基站
和WIFI原理类似,就是把WIFI热点换成基站,实际上Apple的设备就是把WIFI和基站信息结合起来进行定位。
标签:Geolocation,位置,定位,背后,基本原理,WIFI,用户,卫星,GPS From: https://blog.51cto.com/u_2700990/6318854