Android 系统应用-通信应用-MCC、MNC和IMSI的介绍以及运营商标识码对应表
一、前言
如何獲取當前卡的運營商?
得到運營商之后有什么用途?
二、基礎介紹
MCC 移動國家碼(Mobile Country Code)
由于MCC是全球通用的一個標準碼,所以它是由國際電聯組織ITU(International Telecommunication Union)統一分配與管理的,其作用就是用于標識移動用戶所屬的國家或地區。
MCC碼共3位。中國大陸的MCC是460。
中國香港:454(454, "Hong Kong", "HK", "香港")
中國澳門:455
中國大陸:460(460, "China", "CN", "中國")
中國臺灣:466(466, "Taiwan", "TW", "臺灣")
注意:一個國家也可以分配多個MCC。如美國的MCC:310, 311和316共三個。
MNC 移動網絡碼(Mobile Network Code)
由于在很多國家或地區進行電信運營的電信運營商及其運營的移動網絡有多個,因此為了區別其電信運營商及其移動網絡,所以制定了MNC,用以標識各運營商的所有移動網絡。
MNC碼共2位。(后續新的運營商入網后,會更新MNC)
中國移動:00,02,04,07,08,20,99
中國聯通:01,06,09
中國電信:03,05,11,12,13
一般MCC與MNC是搭配在一起使用的,其又稱 HNI 歸屬網絡識別碼(Home Network Identity),HNI = MCC + MNC,用于標識用戶所歸屬的網絡(注:此處的網絡等同于PLMN)
具體舉例如下:
46000, "CHINA MOBILE", "CN"? ? ? 中國移動
46001, "CHN-CUGSM", "CN"? ? ? ? ?中國聯通
46002, "CHINA MOBILE", "CN"? ? ? 中國移動
46003, "CHINA TELECOM", "CN"? 中國電信
45400, "CSL", "HK"? ? ? ? ? ? ? ? ? 香港電訊
45401, "NEW WORLD", "HK"? 香港新世界
45404, "Orange", "HK"? ? ? ? ? ? ?香港Orange
46692, "Chunghwa", "TW"? ? ? ?中華電訊
46697, "TWN GSM", "TW"? ? ? ?臺灣大哥大
三、IMSI 擴展介紹
IMSI 國際移動用戶識別碼(International Mobile Subscriber Identity)
國際上唯一識別一個用戶所分配的號碼。IMSI的用途是為了徹底解決國際間的通話問題。但是由于一些國家地區使用的老的技術標準,導致無法兼容,目前還是以老的技術標準為主,不過老的技術標準劣勢明顯,全面啟用IMSI已經是板上釘釘了。(這里的一些國家地區,目前就是北美地區,當前分為北美網絡和北美以外的網絡)
關于漫游的相關介紹看后續補充,這一塊牽扯的實在太多了。
回到IMSI
不管是在北美網絡或者是在非北美網絡里,IMSI的組成格式都一樣:IMSI = MCC + MNC + MSIN,兩個網絡最重要的差異就是,其生成的全球標題不一致,導致兩個網絡進行通話時,需進一步進行全球標題格式轉換。北美以外的網絡的全球標題 = CC(國家碼E.123標準)?+ NC(網絡碼E.123標準) + MSIN,北美網絡的全球標題 = IMSI = MCC + MNC + MSIN(其全球標題與IMSI一致)這里又冒出來了個MSIN的東西。
MSIN 移動訂戶識別代碼(Mobile Subscription Identification Number)
MSIN是由運營商自行分配的,共10位十進制數字。它的構成也有它的一套規則在里面,此處不再詳細介紹了,因為越扯概念越多。
如此,各個國家的手機用戶之間便能撥打國際漫游電話了。
四、如何在代碼中獲取IMSI等,并使用它們(注:由于當前沒有相關代碼,多卡獲取IMSI的情況后續更新,下列代碼可作為參考)
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String imsi = tm.getSubscriberId();
if (null != imsi) {
? ? if (imsi.startsWith("46000") || imsi.startsWith("46002") || imsi.startsWith("46004")) {//中國移動
? ? } else if (imsi.startsWith("46001")) {//中國聯通
? ? } else if (imsi.startsWith("46003")) {//中國電信
? ? }
}
五、獲取運營商的意義
最直接的應用環境,就是對CTA入網要求以及入庫要求定制。
當然還有其他的一些需求定制需要,也會用到。
總結
以上是生活随笔為你收集整理的Android 系统应用-通信应用-MCC、MNC和IMSI的介绍以及运营商标识码对应表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql left join like
- 下一篇: 项目实战:p2p文件下载器