温馨提示:这篇文章已超过422天没有更新,请注意相关的内容是否还可用!
摘要:,,本文介绍了Android系统中APN(接入点名称)的配置和加载过程。APN是手机移动网络中的重要设置,它决定了设备通过哪个网络接入点连接到互联网。本文详细阐述了如何在Android设备上配置APN,包括设置必要的参数如名称、APN、代理、端口等,并解释了加载APN的过程,以便用户能够根据需求自定义网络设置,优化网络体验。
APN简介
APN(Access Point Name)是一种网络接入技术,是手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络,对于手机用户来说,可以访问的外部网络类型有很多,Internet、WAP网站,集团企业内部网络、行业内部专用网络等,不同的接入点所能访问的范围以及接入的方式是不同的,为了确定手机激活后要访问哪个网络并分配相应的IP,就需要依靠APN来进行区分。
APN通常作为用户签约数据存储在HSS(归属用户服务器)或HLR(Home Location Register)中,用户手机在发起分组业务时,也会向网络侧SGSN(Serving GPRS Support Node)或MME(Mobility Management Entity)提供APN,SGSN/MME根据用户所提供的APN,通过DNS(Domain Name Server)进行域名解析,获取到GGSN(Gateway GPRS Support Node)/PGW(Packet Data Network Gateway)的IP地址,将用户接入到APN对应的PDN(Packet Data Network)中,HLR中也可存储一个通配符,以便用户或SGSN选择接入一个未在HLR中存储的APN。
APN配置
APN的配置文件位于/etc/目录下的apns-conf.xml,配置参数经过解析后,存放到数据库telephony.db的表carriers中,表的列字段都定义在Telephony.java文件的子类Carriers中,常见的字段包括:运营商名称、运营商国家码、运营商网络码、APN名称、彩信中心地址、彩信代理、彩信端口、APN类型、非漫游IP协议、漫游IP协议、虚拟网络运营商类型、mvno_type对应的值、是否在APN菜单中可编辑、是否在APN菜单中可见以及网络类型掩码等。
APN主要参数介绍
1、carrier:运营商名称,无特殊意义。
2、mcc:运营商国家码。
3、mnc:运营商网络码。
4、apn:APN名称。
5、mmsc:彩信中心地址,若不支持彩信可不配置。
6、mmsproxy:彩信代理。
7、mmsport:彩信端口。
8、type:APN类型,包括default、mms、supl等。
9、protocol:非漫游IP协议,包括IP、IPV6、IPV4V6,不配置时默认为IP即IPV4。
10、roaming_protocol:漫游IP协议,选项与protocol相同,不配置时默认与protocol一致。
11、mvno_type:虚拟网络运营商类型,包括gid、spn、imsi等。
12、mvno_match_data:mvno_type对应的值。
13、user_editable:是否在APN菜单中可编辑。
14、user_visible:是否在APN菜单中可见。
15、network_type_bitmask:网络类型掩码,表示不同的网络类型组合,若不配置,则默认为除18以外的其他值。
APN的加载
APN的加载即APN数据库的初始化,由TelephonyProvider模块完成,如果需要修改APN配置,可以直接修改apns-conf.xml文件,该文件一般位于手机的/etc/目录下,修改后,将文件push到/etc/目录下,并删除databases下的telephony.db文件,重新开机后,手机会重新加载APN信息到carriers表中,如果不删除telephony.db文件,正常的开关机是不会重新加载apns-conf.xml的。
附录1:[Carriers参数定义](具体内容已列出各个参数的公共静态常量字符串定义)。
附录2:[网络类型](具体内容已包含各种网络类型的描述和图示)。
还没有评论,来说两句吧...