当前位置:操作系统 > 安卓/Android >>

android 监听电话状态

[java] 
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
telephonyManager.listen(new PhoneListener(), PhoneStateListener.LISTEN_CALL_STATE);  

[java]  
private class PhoneListener extends PhoneStateListener { 
        @Override     www.zzzyk.com
        public void onCallStateChanged(int state, String incomingNumber) { 
            super.onCallStateChanged(state, incomingNumber); 
             
            switch (state) { 
            case TelephonyManager.CALL_STATE_RINGING://来电状态 
                 
                break; 
            case TelephonyManager.CALL_STATE_OFFHOOK://接听状态 
                 
                break;           
            case TelephonyManager.CALL_STATE_IDLE://挂断后回到空闲状态 
 
                break; 
                 
            default: 
                break; 
            } 
        } 
         
    } 

以上代码是对电话进行状态改变的监听。这里需要理解监听器的机制。
Android的事件处理机制有两种:监听和回调。

A基于监听的事件处理

主要涉及三类对象:EventSource(事件源),Event(事件),EventListener(事件监听器)

监听机制处理事件的流程图如下(委派式:Delegation):

 

 

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,