Android APN的配置和加载,Android APN的配置与加载方法解析

马肤

温馨提示:这篇文章已超过422天没有更新,请注意相关的内容是否还可用!

摘要:,,本文介绍了Android系统中APN(接入点名称)的配置和加载过程。APN是手机移动网络中的重要设置,它决定了设备通过哪个网络接入点连接到互联网。本文详细阐述了如何在Android设备上配置APN,包括设置必要的参数如名称、APN、代理、端口等,并解释了加载APN的过程,以便用户能够根据需求自定义网络设置,优化网络体验。

APN简介

APN(Access Point Name)是一种网络接入技术,是手机上网时必须配置的一个参数,它决定了手机通过哪种接入方式来访问网络,对于手机用户来说,可以访问的外部网络类型有很多,Internet、WAP网站,集团企业内部网络、行业内部专用网络等,不同的接入点所能访问的范围以及接入的方式是不同的,为了确定手机激活后要访问哪个网络并分配相应的IP,就需要依靠APN来进行区分。

Android APN的配置和加载,Android APN的配置与加载方法解析 第1张

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名称。

Android APN的配置和加载,Android APN的配置与加载方法解析 第2张

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对应的值。

Android APN的配置和加载,Android APN的配置与加载方法解析 第3张

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:[网络类型](具体内容已包含各种网络类型的描述和图示)。


0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 【研发日记】Matlab/Simulink自动生成代码(二)——五种选择结构实现方法,Matlab/Simulink自动生成代码的五种选择结构实现方法(二),Matlab/Simulink自动生成代码的五种选择结构实现方法详解(二)
  • 超级好用的C++实用库之跨平台实用方法,跨平台实用方法的C++实用库超好用指南,C++跨平台实用库使用指南,超好用实用方法集合,C++跨平台实用库超好用指南,方法与技巧集合
  • 【动态规划】斐波那契数列模型(C++),斐波那契数列模型(C++实现与动态规划解析),斐波那契数列模型解析与C++实现(动态规划)
  • 【C++】,string类底层的模拟实现,C++中string类的模拟底层实现探究
  • uniapp 小程序实现微信授权登录(前端和后端),Uniapp小程序实现微信授权登录全流程(前端后端全攻略),Uniapp小程序微信授权登录全流程攻略,前端后端全指南
  • Vue脚手架的安装(保姆级教程),Vue脚手架保姆级安装教程,Vue脚手架保姆级安装指南,Vue脚手架保姆级安装指南,从零开始教你如何安装Vue脚手架
  • 如何在树莓派 Raspberry Pi中本地部署一个web站点并实现无公网IP远程访问,树莓派上本地部署Web站点及无公网IP远程访问指南,树莓派部署Web站点及无公网IP远程访问指南,本地部署与远程访问实践,树莓派部署Web站点及无公网IP远程访问实践指南,树莓派部署Web站点及无公网IP远程访问实践指南,本地部署与远程访问详解,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南。
  • vue2技术栈实现AI问答机器人功能(流式与非流式两种接口方法),Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法探究,Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法详解
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,0人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码