Android 拦截来电


Android 拦截来电,要实现电话拦截,需要监听电话的状态,方法如下:

  1. /* 取得电话服务 */  
  2. TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);  
  3. PhoneStateListener listener = new PhoneStateListener(){   
  4.     @Override    
  5.     public void onCallStateChanged(int state, String incomingNumber) {  
  6.           switch (state){  
  7.             case TelephonyManager.CALL_STATE_IDLE: /* 无任何状态时 */  
  8.                 break;  
  9.             case TelephonyManager.CALL_STATE_OFFHOOK: /* 接起电话时 */  
  10.                 break;    
  11.             case TelephonyManager.CALL_STATE_RINGING: /* 电话进来时 */  
  12.                 break;  
  13.             default:  
  14.         break;  
  15.           }  
  16.     super.onCallStateChanged(state, incomingNumber);  
  17.     }             
  18. };  
  19. //监听电话的状态   
  20. telManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);  
  21. //在清单文件AndroidManifest.xml中添加权限:   
  22. <uses-permission android:name="android.permission.READ_PHONE_STATE"/>  

相关内容