TelephonyManager類的方法詳解

TelephonyManager類主要提供了一系列用于訪問與手機(jī)通訊相關(guān)的狀態(tài)和信息的get方法。其中包括手機(jī)SIM的狀態(tài)和信息蛀骇、電信網(wǎng)絡(luò)的狀態(tài)及手機(jī)用戶的信息。在應(yīng)用程序中可以使用這些get方法獲取相關(guān)數(shù)據(jù)勉抓。

TelephonyManager類的對(duì)象可以通過Context.getSystemService(Context.TELEPHONY_SERVICE)方法來獲得吨述,需要注意的是有些通訊信息的獲取對(duì)應(yīng)用程序的權(quán)限有一定的限制,在開發(fā)的時(shí)候需要為其添加相應(yīng)的權(quán)限歧寺。

以下列出TelephonyManager類所有方法及說明:

package com.ljq.activity;

import java.util.List;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.telephony.CellLocation;
import android.telephony.NeighboringCellInfo;
import android.telephony.TelephonyManager;

public class TelephonyManagerActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        /**
         * 返回電話狀態(tài)
         * 
         * CALL_STATE_IDLE 無任何狀態(tài)時(shí) 
         * CALL_STATE_OFFHOOK 接起電話時(shí)
         * CALL_STATE_RINGING 電話進(jìn)來時(shí) 
         */
        tm.getCallState();
        //返回當(dāng)前移動(dòng)終端的位置
        CellLocation location=tm.getCellLocation();
        //請(qǐng)求位置更新燥狰,如果更新將產(chǎn)生廣播,接收對(duì)象為注冊(cè)LISTEN_CELL_LOCATION的對(duì)象斜筐,需要的permission名稱為ACCESS_COARSE_LOCATION龙致。
        location.requestLocationUpdate();
        /**
         * 獲取數(shù)據(jù)活動(dòng)狀態(tài)
         * 
         * DATA_ACTIVITY_IN 數(shù)據(jù)連接狀態(tài):活動(dòng),正在接受數(shù)據(jù)
         * DATA_ACTIVITY_OUT 數(shù)據(jù)連接狀態(tài):活動(dòng)顷链,正在發(fā)送數(shù)據(jù)
         * DATA_ACTIVITY_INOUT 數(shù)據(jù)連接狀態(tài):活動(dòng)目代,正在接受和發(fā)送數(shù)據(jù)
         * DATA_ACTIVITY_NONE 數(shù)據(jù)連接狀態(tài):活動(dòng),但無數(shù)據(jù)發(fā)送和接受
         */
        tm.getDataActivity();
        /**
         * 獲取數(shù)據(jù)連接狀態(tài)
         * 
         * DATA_CONNECTED 數(shù)據(jù)連接狀態(tài):已連接
         * DATA_CONNECTING 數(shù)據(jù)連接狀態(tài):正在連接
         * DATA_DISCONNECTED 數(shù)據(jù)連接狀態(tài):斷開
         * DATA_SUSPENDED 數(shù)據(jù)連接狀態(tài):暫停
         */
        tm.getDataState();
        /**
         * 返回當(dāng)前移動(dòng)終端的唯一標(biāo)識(shí)
         * 
         * 如果是GSM網(wǎng)絡(luò),返回IMEI榛了;如果是CDMA網(wǎng)絡(luò)在讶,返回MEID
         */
        tm.getDeviceId();
        //返回移動(dòng)終端的軟件版本,例如:GSM手機(jī)的IMEI/SV碼霜大。
        tm.getDeviceSoftwareVersion();
        //返回手機(jī)號(hào)碼构哺,對(duì)于GSM網(wǎng)絡(luò)來說即MSISDN
        tm.getLine1Number();
        //返回當(dāng)前移動(dòng)終端附近移動(dòng)終端的信息
        List<NeighboringCellInfo> infos=tm.getNeighboringCellInfo();
        for(NeighboringCellInfo info:infos){
            //獲取鄰居小區(qū)號(hào)
            int cid=info.getCid();
            //獲取鄰居小區(qū)LAC,LAC: 位置區(qū)域碼战坤。為了確定移動(dòng)臺(tái)的位置曙强,每個(gè)GSM/PLMN的覆蓋區(qū)都被劃分成許多位置區(qū),LAC則用于標(biāo)識(shí)不同的位置區(qū)湖笨。
            info.getLac();
            info.getNetworkType();
            info.getPsc();
            //獲取鄰居小區(qū)信號(hào)強(qiáng)度  
            info.getRssi();
        }
        //返回ISO標(biāo)準(zhǔn)的國(guó)家碼旗扑,即國(guó)際長(zhǎng)途區(qū)號(hào)
        tm.getNetworkCountryIso();
        //返回MCC+MNC代碼 (SIM卡運(yùn)營(yíng)商國(guó)家代碼和運(yùn)營(yíng)商網(wǎng)絡(luò)代碼)(IMSI)
        tm.getNetworkOperator();
        //返回移動(dòng)網(wǎng)絡(luò)運(yùn)營(yíng)商的名字(SPN)
        tm.getNetworkOperatorName();
        /**
         * 獲取網(wǎng)絡(luò)類型
         * 
         * NETWORK_TYPE_CDMA 網(wǎng)絡(luò)類型為CDMA
         * NETWORK_TYPE_EDGE 網(wǎng)絡(luò)類型為EDGE
         * NETWORK_TYPE_EVDO_0 網(wǎng)絡(luò)類型為EVDO0
         * NETWORK_TYPE_EVDO_A 網(wǎng)絡(luò)類型為EVDOA
         * NETWORK_TYPE_GPRS 網(wǎng)絡(luò)類型為GPRS
         * NETWORK_TYPE_HSDPA 網(wǎng)絡(luò)類型為HSDPA
         * NETWORK_TYPE_HSPA 網(wǎng)絡(luò)類型為HSPA
         * NETWORK_TYPE_HSUPA 網(wǎng)絡(luò)類型為HSUPA
         * NETWORK_TYPE_UMTS 網(wǎng)絡(luò)類型為UMTS
         * 
         * 在中國(guó)蹦骑,聯(lián)通的3G為UMTS或HSDPA慈省,移動(dòng)和聯(lián)通的2G為GPRS或EGDE,電信的2G為CDMA眠菇,電信的3G為EVDO
         */
        tm.getNetworkType();
        /**
         * 返回移動(dòng)終端的類型
         * 
         * PHONE_TYPE_CDMA 手機(jī)制式為CDMA边败,電信
         * PHONE_TYPE_GSM 手機(jī)制式為GSM,移動(dòng)和聯(lián)通
         * PHONE_TYPE_NONE 手機(jī)制式未知
         */
        tm.getPhoneType();
        //返回SIM卡提供商的國(guó)家代碼
        tm.getSimCountryIso();
        //返回MCC+MNC代碼 (SIM卡運(yùn)營(yíng)商國(guó)家代碼和運(yùn)營(yíng)商網(wǎng)絡(luò)代碼)(IMSI)
        tm.getSimOperator();
        tm.getSimOperatorName();
        //返回SIM卡的序列號(hào)(IMEI)
        tm.getSimSerialNumber();
        /**
         * 返回移動(dòng)終端
         * 
         * SIM_STATE_ABSENT SIM卡未找到
         * SIM_STATE_NETWORK_LOCKED SIM卡網(wǎng)絡(luò)被鎖定捎废,需要Network PIN解鎖
         * SIM_STATE_PIN_REQUIRED SIM卡PIN被鎖定笑窜,需要User PIN解鎖
         * SIM_STATE_PUK_REQUIRED SIM卡PUK被鎖定,需要User PUK解鎖
         * SIM_STATE_READY SIM卡可用
         * SIM_STATE_UNKNOWN SIM卡未知
         */
        tm.getSimState();
        //返回用戶唯一標(biāo)識(shí)登疗,比如GSM網(wǎng)絡(luò)的IMSI編號(hào)
        tm.getSubscriberId();
        //獲取語(yǔ)音信箱號(hào)碼關(guān)聯(lián)的字母標(biāo)識(shí)排截。 
        tm.getVoiceMailAlphaTag();
        //返回語(yǔ)音郵件號(hào)碼
        tm.getVoiceMailNumber();
        tm.hasIccCard();
        //返回手機(jī)是否處于漫游狀態(tài)
        tm.isNetworkRoaming();
        // tm.listen(PhoneStateListener listener, int events) ;
        
        //解釋:
        //IMSI是國(guó)際移動(dòng)用戶識(shí)別碼的簡(jiǎn)稱(International Mobile Subscriber Identity)
        //IMSI共有15位,其結(jié)構(gòu)如下:
        //MCC+MNC+MIN
        //MCC:Mobile Country Code辐益,移動(dòng)國(guó)家碼断傲,共3位,中國(guó)為460;
        //MNC:Mobile NetworkCode智政,移動(dòng)網(wǎng)絡(luò)碼认罩,共2位
        //在中國(guó),移動(dòng)的代碼為電00和02续捂,聯(lián)通的代碼為01垦垂,電信的代碼為03
        //合起來就是(也是Android手機(jī)中APN配置文件中的代碼):
        //中國(guó)移動(dòng):46000 46002
        //中國(guó)聯(lián)通:46001
        //中國(guó)電信:46003
        //舉例,一個(gè)典型的IMSI號(hào)碼為460030912121001

        //IMEI是International Mobile Equipment Identity (國(guó)際移動(dòng)設(shè)備標(biāo)識(shí))的簡(jiǎn)稱
        //IMEI由15位數(shù)字組成的”電子串號(hào)”牙瓢,它與每臺(tái)手機(jī)一一對(duì)應(yīng)劫拗,而且該碼是全世界唯一的
        //其組成為:
        //1. 前6位數(shù)(TAC)是”型號(hào)核準(zhǔn)號(hào)碼”,一般代表機(jī)型
        //2. 接著的2位數(shù)(FAC)是”最后裝配號(hào)”矾克,一般代表產(chǎn)地
        //3. 之后的6位數(shù)(SNR)是”串號(hào)”页慷,一般代表生產(chǎn)順序號(hào)
        //4. 最后1位數(shù)(SP)通常是”0″,為檢驗(yàn)碼,目前暫備用
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末差购,一起剝皮案震驚了整個(gè)濱河市四瘫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌欲逃,老刑警劉巖找蜜,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異稳析,居然都是意外死亡洗做,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門彰居,熙熙樓的掌柜王于貴愁眉苦臉地迎上來诚纸,“玉大人,你說我怎么就攤上這事陈惰∑枧牵” “怎么了?”我有些...
    開封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵抬闯,是天一觀的道長(zhǎng)井辆。 經(jīng)常有香客問我,道長(zhǎng)溶握,這世上最難降的妖魔是什么杯缺? 我笑而不...
    開封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮睡榆,結(jié)果婚禮上萍肆,老公的妹妹穿的比我還像新娘。我一直安慰自己胀屿,他們只是感情好塘揣,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著碉纳,像睡著了一般勿负。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上劳曹,一...
    開封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天奴愉,我揣著相機(jī)與錄音,去河邊找鬼铁孵。 笑死锭硼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蜕劝。 我是一名探鬼主播檀头,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼轰异,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了暑始?” 一聲冷哼從身側(cè)響起搭独,我...
    開封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎廊镜,沒想到半個(gè)月后牙肝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡嗤朴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年配椭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雹姊。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡股缸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吱雏,到底是詐尸還是另有隱情敦姻,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布坎背,位于F島的核電站替劈,受9級(jí)特大地震影響寄雀,放射性物質(zhì)發(fā)生泄漏得滤。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一盒犹、第九天 我趴在偏房一處隱蔽的房頂上張望懂更。 院中可真熱鬧,春花似錦急膀、人聲如沸沮协。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)慷暂。三九已至,卻和暖如春晨雳,著一層夾襖步出監(jiān)牢的瞬間行瑞,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來泰國(guó)打工餐禁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留血久,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓帮非,卻偏偏與公主長(zhǎng)得像氧吐,于是被迫代替她去往敵國(guó)和親讹蘑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容