Android手机通过APN设置上网的方法

今天一个朋友问了我关于android网络设置的问题,感觉还是挺有趣,特分享如下:

他是在香港买了一款LGP500的手机,系统是android系统,但是回来之后不能上网,于是在网上搜了很多资料,但是设置后总是保存不成功。

他的设置如下:(因为他号是移动的,所以是按照移动的参数进行设置)


不能保存的设置

第一个接入点:手机WAP上网接入点设置
名称:cmwap
APN:cmwap
代理:10.0.0.172
端口:80
MCC:460
MNC:00
APN类型:wap 第二个接入点:手机net上网接入点设置
名称:cmnet
APN:cmnet
MCC:460
MNC:00
APN类型:default 第三个接入点:手机移动彩信接入点设置
名称:cmwap mms
APN:cmwap
代理:10.0.0.172
端口:80
MMSC:http://mmsc.monternet.com
彩信代理:10.0.0.172
彩信端口:80
MCC:460
MNC:00
APN类型:mms

然后我又看了同事在国内买的android手机,也是如这般设置,感觉很奇怪,到底是哪里出问题了呢。

在网上找了找,有这样一段文字特别引起了我的注意:

在设置APN的时候,MCC和MNC为必填项,这2个项目不填的话APN设置将无法保存!

于是有了这样的猜想,手机rom的不同,MNC项的00是否被当成了空字符处理?然后导致保存不成功?

如果是这样的话,问题又该如何解决?

想想移动也应想过这样的问题,那么是否就会有另外一个数字来代替00表示MNC号?

再查了一下中国移动的MNC号,果然还有另外一个数字存在,那就是02。

于是让朋友将MNC号从00改成02再试一下,结果保存果然成功,也能正常上网了。


最终保存成功的设置

第一个接入点:手机WAP上网接入点设置
名称:cmwap
APN:cmwap
代理:10.0.0.172
端口:80
MCC:460
MNC:02
APN类型:wap 第二个接入点:手机net上网接入点设置
名称:cmnet
APN:cmnet
MCC:460
MNC:02
APN类型:default 第三个接入点:手机移动彩信接入点设置
名称:cmwap mms
APN:cmwap
代理:10.0.0.172
端口:80
MMSC:http://mmsc.monternet.com
彩信代理:10.0.0.172
彩信端口:80
MCC:460
MNC:02
APN类型:mms

最后补充一点关于MMC与MNC的解释:


MCC+MNC

MCC=移动国家号码,由3位数字组成,唯一地识别移动用户所属的国家,我国为460。
MNC=移动网号,一般大多由2位数字组成,中国移动的是00或02,中国联通的是01。
运营商号码就是MCC+MNC
46000, “CHINA MOBILE”, “CN” 中国移动
46001, “CHN-CUGSM”, “CN” 中国联通
46002, “CHINA MOBILE”, “CN” 中国移动
上一篇:朱晔的互联网架构实践心得S2E6:浅谈高并发架构设计的16招


下一篇:【LeetCode】117. Populating Next Right Pointers in Each Node II 解题报告(Python)