Google基站定位获取位置描述信息.doc_第1页
Google基站定位获取位置描述信息.doc_第2页
Google基站定位获取位置描述信息.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Google基站定位获取位置描述信息 上海富丰信息科技有限公司 邓本涛Google提供了一个秘密的API接口,用来提供给用户做位置查询使用。基站定位、Wi-Fi定位、GPS定位都可以通过gears GeolocationAPI来查询。GeolocationAPI接口使用HTTP协议,交互数据为json语法。1. 发送数据向Google服务器请求的数据格式如下: version: 1.1.0, host: , access_token: 2:k7j3G6LaL6u_lafw:4iXOeOpTh1glSXe, home_mobile_country_code: 310, home_mobile_network_code: 410, radio_type: gsm, carrier: Vodafone, request_address: true, address_language: en_GB, location: latitude: 51.0, longitude: -0.1 , cell_towers: cell_id: 42, location_area_code: 415, mobile_country_code: 310, mobile_network_code: 410, age: 0, signal_strength: -60, timing_advance: 5555 , cell_id: 88, location_area_code: 415, mobile_country_code: 310, mobile_network_code: 580, age: 0, signal_strength: -70, timing_advance: 7777 , wifi_towers: mac_address: 01-23-45-67-89-ab, signal_strength: 8, age: 0 , mac_address: 01-23-45-67-89-ac, signal_strength: 4, age: 0 这里我们主要介绍利用google的API接口做基站定位,其它的定位方式略过。如果只做基站定位,我们只需要提供基站的数据,通过http的post方式提供给google即可。此接口支持多小区上报。一次报多个小区,定位应该更精确一些。但是笔者测试下来,发现报多个小区和报一个小区拿到的位置信息是一样的,不知道google是如何处理多小区数据的。Post给google的数据必须严格按照上面提供的数据格式上报,不然google不认识。给出笔者c语言的实现代码:/* 生成发往GOOGLE的JSON字串。*/void ffps_set_google_cell_id_position_url_str(kal_char* json)kal_char temp110 = 0;memset(temp1, 0x00, sizeof(temp1);strcat(json, );strcat(json, version: 1.1.0,);strcat(json, host: ,);strcat(json, request_address:true,);if(strncmp(ffps_nw_cntx-plmn, (const char*)460, 3) = 0)strcat(json, address_language: zh-CN,);elsestrcat(json, address_language: en_GB,);strcat(json, cell_towers: );strcat(json, );sprintf(temp1, %d, ffps_nw_cntx-cell_id);strcat(json, cell_id: ); strcat(json, temp1); /* CID*/strcat(json, ,);memset(temp1, 0x00, sizeof(temp1);sprintf(temp1, %d, ffps_nw_cntx-lac);strcat(json, location_area_code: ); strcat(json, temp1); /*LAC */strcat(json, ,);memset(temp1, 0x00, sizeof(temp1);strncpy(temp1, ffps_nw_cntx-plmn, 3);strcat(json, mobile_country_code: ); strcat(json, temp1);/*MCC*/strcat(json, ,);memset(temp1, 0x00, sizeof(temp1);strncpy(temp1, ffps_nw_cntx-plmn+3, 3);strcat(json, mobile_network_code: );strcat(json, temp1);/*MNC*/strcat(json, );strcat(json, );上面的代码只上报了一个主小区号给google,如果要上报相邻小区,只需要按google的格式上报即可。Google服务器返回的数据格式如下:“location”:“latitude”:31.167405,”longitude”:121.487603,”address”:“country”:”中国”,”country_code”:”CN”,”region”:”上海市”,”city”:” 上海市”,”street”:”漕宝路”,”street_number”:“400号”,”accuracy”:1815.0,”ac

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论