當前位置:首頁 » 安卓系統 » android取imsi

android取imsi

發布時間: 2023-08-13 18:07:38

『壹』 如何查看手機IMSI

查看手機IMSI方法:
從手機電池槽中查看IMSI,手機關機後取出手機電池,手機背面信息標簽可看到IMSI碼。在手機撥號界面輸入代碼,即可查看到手機IMSI碼。可以直接在手機界面中查詢,點擊啟動程序按鈕,然後點擊設置選項後點擊關於手機選項,接著點擊狀態消息選項,即可查看到本機IMSI號。

『貳』 Android 手機讀取SIM卡信息

手機和 wifi 已經改變了人們的生活方式,成為生活的必需品。手機號碼和寬頻賬號成為運營商相互競爭的重要一環,雙卡雙待的手機需求也逐漸增大,大多數手機廠商將主打手機改為雙卡雙待全網通,而運營商在佔領主SIM卡後,對SIM卡2的慾望越來越大,獲取SIM卡2的信息的需求也變大,只有知己知彼,才能佔得先機。

這里簡單介紹一下 Android 手機如何讀取 Sim 卡信息

可以通過 ContentProvider 進行查詢

使用 SubscriptionManager 類進行讀取信息

通過 SubscriptionInfo 的實例進行讀取信息,對應的是 Siminfo 的表欄位,下面為該類源碼

該類沒有常用的手機IMEI值和IMSI值,這個值可以通過 TelephonyManager 進行讀取,不過需要通過反射,具體可見下方關於 TelephonyManager 的介紹

使用 TelephonyManager 讀取SIM卡信息:

讀取副卡信息大多隻需要1個參數,slotId 或者 subId,源碼方法如下(我們主要關心的是IMEI和IMSI,主要看getDeviceId和getSubscriberId方法):

可以看到源碼中的這些方法均加了 @hide 的參數,無法直接調用,這里就需要用到反射:

現在就可以通過反射進行調用方法讀取數據了

特別注意:

『叄』 android怎麼獲取網路運營商

android 獲取sim卡運營商信息
TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE); TelephonyManager 的使用 TelephonyManager 提供設備上獲取通訊服務信息的入口,應用程序使用這個類的方法來獲取電話的服務商或者狀態。程序也可以注冊一個監聽器來監聽電話狀態的改變。 不需要直接實例化這個類,使用Context.getSystemService(Context.TELEPHONY_SERVICE)來獲取這個類的實例。
注意:一些電話信息需要相應的許可權。 方法無效
getSimOperatorName() Returns the Service Provider Name (SPN). // 獲取服務提供商名字,比如電信,聯通,移動 用下面的方法 第一種方法: 獲取手機的IMSI碼,並判斷是中國移動/中國聯通/中國電信
TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

/** 獲取SIM卡的IMSI碼 * SIM卡唯一標識:IMSI 國際移動用戶識別碼(IMSI:International Mobile Subscriber Identification Number)是區別移動用戶的標志, * 儲存在SIM卡中,可用於區別移動用戶的有效信息。
IMSI由MCC、MNC、MSIN組成,其中MCC為移動國家號碼,由3位數字組成, * 唯一地識別移動客戶所屬的國家,我國為460;MNC為網路id,由2位數字組成, * 用於識別移動客戶所歸屬的移動網路,中國移動為00,中國聯通為01,中國電信為03;
MSIN為移動客戶識別碼,採用等長11位數字構成。 *
唯一地識別國內GSM移動通信網中移動客戶。所以要區分是移動還是聯通,只需取得SIM卡中的MNC欄位即可 */

String imsi = telManager.getSubscriberId();
if(imsi!=null){ if(imsi.startsWith(「46000″) || imsi.startsWith(「46002″))
{//因為移動網路編號46000下的IMSI已經用完,所以虛擬了一個46002編號,134/159號段使用了此編號 //中國移動
}else if(imsi.startsWith(「46001″)){
//中國聯通
}else if(imsi.startsWith(「46003″)){
//中國電信
} }

第二種方法 TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String operator = telManager.getSimOperator();
if(operator!=null){ if(operator.equals(「46000″) || operator.equals(「46002″)|| operator.equals(「46007″)){
//中國移動
}else if(operator.equals(「46001″)){
//中國聯通
}else if(operator.equals(「46003″)){
//中國電信
} }
在文件AndroidManifest.xml中添加許可權 其他方法具體使用方法請查看API 文檔TelephonyManager中方法說明。
在文件 AndroidManifest.xml 中添加許可權 <uses-permission android:name="android.permission.READ_PHONE_STATE"/>

TelephonyManager tel = (TelephonyManager) context .getSystemService(Context.TELEPHONY_SERVICE);
String simOperator = tel.getSimOperator();
IMSI共有15位,其結構如下: MCC+MNC+MIN MCC:Mobile Country Code,移動國家碼,共3位,中國為460; MNC:Mobile Network Code,移動網路碼,共2位,電信03,移動02,聯通GSM 01,一個典型的IMSI號碼為460030912121001; MIN共有10位,其結構如下: 09+M0M1M2M3+ABCD 其中的M0M1M2M3和MDN號碼中的H0H1H2H3可存在對應關系,ABCD四位為自由分配。 可以看出IMSI在MIN號碼前加了MCC,可以區別出每個用戶的來自的國家,因此可以實現國際漫遊。在同一個國家內,如果有多個CDMA運營商,可以通過MNC來進行區別.
功能 說明
getCellLocation() 返回的單元格位置的裝置 ACCESS_COARSE_LOCATION或ACCESS_FINE_LOCATION
getDeviceId() 返回的IMEI / MEID的設備。 如果該設備是GSM設備 然後IMEI號將被退回,如果該設備是一個CDMA設備然後MEID 將被退回 READ_PHONE_STATE
getLine1Number() 返回設備的電話號碼(MSISDN號碼) READ_PHONE_STATE
getNetworkOperatorName() 返回注冊的網路運營商的名字
getNetworkOperator() 返回的MCC +跨國公司的注冊網路運營商
getNetworkCountryIso() 返回注冊的網路運營商的國家代碼
getSimCountryIso() 返回SIM卡運營商的國家代碼 READ_PHONE_STATE
getSimOperator() 返回SIM卡運營商的單個核細胞數+冶 READ_PHONE_STATE
getSimOperatorName() 返回SIM卡運營商的名字 READ_PHONE_STATE
getSimSerialNumber() 返回SIM卡的序列號 READ_PHONE_STATE
getNetworkType() 返回網路設備可用的類型。 這將是 下列其中一個值:
TelephonyManager.NETWORK_TYPE_UNKNOWN TelephonyManager.NETWORK_TYPE_GPRS TelephonyManager.NETWORK_TYPE_EDGE TelephonyManager.NETWORK_TYPE_UMTS READ_PHONE_STATE getPhoneType() 返回設備的類型。 這將是以下值之一: TelephonyManager.PHONE_TYPE_NONE TelephonyManager.PHONE_TYPE_GSM TelephonyManager.PHONE_TYPE_CDMA READ_PHONE_STATE getSubscriberId() 返回用戶識別碼(的IMSI)的設備 READ_PHONE_STATE

getNeighboringCellInfo() 返回NeighboringCellInfo類代表名單 相鄰小區的信息,如果可用,否則將 返回null ACCESS_COARSE_UPDATES

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:744
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:147
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726