- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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
您可能关注的文档
最近下载
- 血透室护士在医疗行为中的职业暴露与职业防护专家讲座.pptx VIP
- 水利工程事故应急方案【精选资料】.doc VIP
- 西奥扶梯XO-9800电气原理图纸.pdf
- 2025年中级注册安全工程师《安全生产法律法规》考试真题及答案解析.docx VIP
- 配送中食材卫生保障措施.docx VIP
- 国家科学技术学术著作出版基金资助力度与科技学术著作出版成本初探.pdf VIP
- DBJ50T-323-2019 滨江步道技术标准 .docx VIP
- 2025年电竞教育机构运营模式与盈利分析.docx
- 5.2染色体变异课件(共47张PPT)人教版(2019)高中生物学必修2(内嵌音频+视频).pptx VIP
- 【复习资料】00642传播学概论(章节复习要点).doc VIP
原创力文档


文档评论(0)