Android 连接管理分析与调试方式_第1页
Android 连接管理分析与调试方式_第2页
Android 连接管理分析与调试方式_第3页
Android 连接管理分析与调试方式_第4页
Android 连接管理分析与调试方式_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

连接管理器与调试王垚2013-07-04BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.

培训大纲

ConnectivityManager概述

SDK中有关ConnectivityManager的API

ConnectivityManager分析图

Wi-Fi分析图Mobile数据业务开关的时序图APN说明与配置调试BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.ConnectivityManager概述监听网络连接(Wi-Fi,GPRS,UMTS等等)当网络连接发生变化发送广播当一个网络连接断开,尝试连接另一个网络提供应用简单易用的可以查询网络状态的APIBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.SDK中有关ConnectivityManager的APIBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.接口调用和注意(1)调用连接管理器的API,需要在APP的清单文件中添加访问权限,否则会出现异常。<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permissionandroid:name="android.permission.CHANGE_NETWORK_STATE"/><uses-permissionandroid:name="android.permission.INTERNET"></uses-permission>(2)通过getSystemService(Context.CONNECTIVITY_SERVICE)的方式获取到连接管理器的实例.(3)然后就可以正常的调用APIBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.ConnectivityManager分析图BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.ConnectivityManager管理的网络类型num

nettype

headline

eg

0TYPE_MOBILE

defaultdataconnection

蜂窝网络

1TYPE_WIFI

wifidataconnection

Wi-Fi

2TYPE_MOBILE_MMS

mms-specificmobiledataconnection

彩信

3TYPE_MOBILE_SUPL

SUPL-specificmobiledataconnection

celllocation

4TYPE_MOBILE_DUN

DUN-specificmobiledataconnection

Dialupnetworking5TYPE_MOBILE_HIPRI

Highprioritymobiledataconnection

高优先级网络

6TYPE_WIMAX

DefaultWINMAXdataconnection

4G

7TYPE_BLUETOOTH

bluetooth

蓝牙热点

8TYPE_DUMMY

@hide

仿真

9TYPE_ETHERNET

@hide

以太网

10TYPE_MOBILE_FOTA@hide

OvertheairAdminstration11TYPE_MOBILE_IMS@hide

IPMultimediaSubsystem12TYPE_MOBILE_CBS@hide

CarrierBrandedServices13TYPE_WIFI_P2P@hide

AWi-Fip2pconnectionBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.网络状态追踪器接收Mobile,Wi-Fi的各个网络服务的网络变化广播,并传递给连接管理器。

这里也是补充ConnectivityManager完整分析图中不足。BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.网络的优先级顺序<string-arraytranslatable="false"name="networkAttributes"><item>"wifi,1,1,1,-1,true"</item><item>"mobile,0,0,0,-1,true"</item><item>"mobile_mms,2,0,2,60000,true"</item><item>"mobile_supl,3,0,2,60000,true"</item><item>"mobile_hipri,5,0,3,60000,true"</item><item>"mobile_fota,10,0,2,60000,true"</item><item>"mobile_ims,11,0,2,60000,true"</item><item>"mobile_cbs,12,0,2,60000,true"</item><item>"wifi_p2p,13,1,0,-1,true"</item><item>"bluetooth,7,7,2,-1,true"</item></string-array>标红代表了优先级依次代表name,type,radio,priority,restoreTime,dependencyMetBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.Mobile数据业务时序图——开BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.Mobile数据业务时序图——关BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN说明与配置APN概念APN配置APN版本APN数据库BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN概念APN的英文全称是AccessPointName,中文全称叫接入点,是您在通过手机上网时必须配置的一个参数,它决定了您的手机通过哪种接入方式来访问网络。BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN配置QC:AndroidSrc/development/data/etc/apns-conf.xmlMTK:AndroidSrc/mediatek/source/frameworks/telephony/etc/apns-conf.xml资源文件中也可以保存apn:AndroidSrc/frameworks/base/core/res/res/xml/apns.xmlBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN版本分为两种格式v1和v2v1,v2通用属性:1.XML节点<apn></apn>2.属性“carrier”,运营商,取值运营商决定3.属性“apn”,接入点名称,取值运营商决定4.属性“mcc”,移动国家代码,取值运营商决定5.属性“mnc”,移动网络代码,取值运营商决定6.属性“proxy”,代理服务器,取值运营商决定7.属性“port”,端口号,取值运营商决定8.属性“mmsc”,彩信中心,取值运营商决定9.属性“mmsproxy”,彩信中心,取值运营商决定10.属性“mmsport”,彩信中心,取值运营商决定11.属性“user”,用户名,取值运营商决定BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN版本12.属性“password”,密码,取值运营商决定13.属性“authtype”,认证类型,取值范围:NONE:0;PAP:1;CHAP:2;PAP_CHAP:314.属性“type”,apn类型,取值范围:*;default;mms;supl;dun;hipri;fota;ims;cbsv2独有属性:1.属性“protocol”,协议,取值范围:IP;IPV6;IPV4V62.属性“roaming_protocol”,漫游协议,取值范围:同上3.属性“carrier_enabled”,取值范围:true,false4.属性“bearer”,承载系统,取值范围:LTE:14eHRPD:13Unspecified:0BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.APN数据库数据库位置:/data/data/viders.telephony/databases/telephony.db运营商的表项:carriers对应的URI:content://telephony/carriers/当前用户选中的APN,是通过sharepreferences保存的位置:/data/data/viders.telephony/shared_prefs/preferred-apn.xml对应的URI:content://telephony/carriers/preferapnBRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.调试打logTcpdump抓取数据包远程应用调试(1)远程应用调试(2)C/C++GDB调试BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.打logCS/PS网络是否有服务选择“正则表达式”;使用Perl引擎;选择“列出包含字符串的行”如下显示注册状态为2,表示在搜网,只有为1和5的时候表示有服务,后者表示为漫游BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.打logConnectivityManager网络变化状态如何从log信息中体现?关注的logTAG为ConnectivityService|WifiService|MobileDataStateTracker等BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.Tcpdump抓数据包指令:

tcpdump[-aAdDeflLnNOpqRStuUvxX][-ccount][-Cfile_size] [-Ealgo:secret][-Ffile][-iinterface][-Msecret] [-rfile][-ssnaplen][-Ttype][-wfile] [-Wfilecount][-ydatalinktype][-Zuser] [expression]生成的pcap数据包,通过wireshark进行分析BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.远程应用调试(1)将Android源代码development/ide/eclipse路径下的.classpath复制到源码根路径下创建Java工程,修改location的路径为源代码的路径,finish。BRIGHTERWIRELESSTECHNOLOGY(Beijing)Ltd.远程应用调试(1)使eclipse识别手机设备,选中system_process,因为所有的services全都可以通过绑定这个进程进行d

温馨提示

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

评论

0/150

提交评论