Android系列之Wifi定位.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android系列之Wifi定位

 HYPERLINK /jk1001/archive/2010/07/29/1788106.html Android系列之Wifi定位 Broncho A1还不支持基站和WIFI定位,Android的老版本里是有NetworkLocationProvider的,它实现了基站和WIFI定位,但从 android 1.5之后就被移除了。本来想在broncho A1里自己实现NetworkLocationProvider的,但一直没有时间去研究。我知道 gears(/p/gears/)是有提供类似的功能,昨天研究了一下Gears的代码,看能不能移植到 android中来 1.下载源代码 [url]svn checkout /svn/trunk/ gears-read-only[/url] 定位相关的源代码在gears/geolocation目录中。 2.关注android平台中的基站位置变化 JAVA类AndroidRadioDataProvider是 PhoneStateListener的子类,用来监听Android电话的状态变化。当服务状态、信号强度和基站变化时, 就会用下面代码获取小区信息: ? ?1 RadioData radioData = new RadioData();?? ?2 ??????GsmCellLocation gsmCellLocation = (GsmCellLocation) cellLocation;?? ?3 ???? ?4 ??????// Extract the cell id, LAC, and signal strength.?? ?5 ??????radioData.cellId = gsmCellLocation.getCid();?? ?6 ??????radioData.locationAreaCode = gsmCellLocation.getLac();?? ?7 ??????radioData.signalStrength = signalStrength;?? ?8 ???? ?9 ??????// Extract the home MCC and home MNC.?? 10 ??????String operator = telephonyManager.getSimOperator();?? 11 ??????radioData.setMobileCodes(operator, true);?? 12 ???? 13 ??????if (serviceState != null) {?? 14 ????????// Extract the carrier name.?? 15 ????????radioData.carrierName = serviceState.getOperatorAlphaLong();?? 16 ???? 17 ????????// Extract the MCC and MNC.?? 18 ????????operator = serviceState.getOperatorNumeric();?? 19 ????????radioData.setMobileCodes(operator, false);?? 20 ??????}?? 21 ???? 22 ??????// Finally get the radio type.?? 23 ??????int type = telephonyManager.getNetworkType();?? 24 ??????if (type == TelephonyManager.NETWORK_TYPE_UMTS) {?? 25 ????????radioData.radioType = RADIO_TYPE_WCDMA;?? 26 ??????} else if (type == TelephonyManager.NETWORK_TYPE_GPRS?? 27 ?????????????????|| type == TelephonyManager.NETWORK_TYPE_EDGE) {?? 28 ????????radioData.radioType = RADIO_TYPE_GSM;?? 29 ??????}? 30 然后再调用用C代码实现的onUpdateAvailable函数。 2.Native函数onUpdateAvailable是在 radio_data_provider_android.cc里实现的。 声明Native函数 ? 1 JNINativeMet

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档