这两天关注了一下这方面的资料。原先只知道可以使用基站定位,但是一直愁没法获得基站数据,也就作罢了,后来GoogleMap的“我的位置”功能给我提了醒,google可能会有这方面的API,至少也可以通过分析网络协议包的形式获取。分析过程就不写了,手机可通过ActiveSync访问网络,手机运行GoogleMap并显示当前位置,再通过电脑上的使用网络分析包工具即可。
关于如何实现以及还可以的扩充应用 推荐一篇文章 如何在任何手机上找到GPS定位。里面描述了
1 如何从Windows Mobile无线接口层Cell塔获取数据
2如何从Google的API http://www.google.com/glm/mmap 获取经纬度
3 如何利用获取的经纬度更新您的Yahoo!火鹰帐户,TwitterMap
这个只是GPS和基站联合进行的定位,现在Google还推出了WiFi定位的API功能,还有些第三方网站也有API提供。比方说http://www.skyhookwireless.com/ 。只要提供当时位置你寻到的WIFI热点的MAC地址,SSID,dbi信号强度等信息,既可以得知经纬度。
下面两张图可以说明整个实现原理

终端所在地周边有非常多的网络信号,基站信息Cellular(绿色),Wifi(红色),GPS(黄色)信息

手机终端作为信号接收器,获取周边的信号,通过内置软件传递给后台服务器(Google)服务器计算即可得知终端的位置
由个网站值得推荐 AntBlog 站长提供了3种数据服务接口,将Google的接口进行了简化封装,更方便大家的调用,地址如下

