private TelephonyManager mTelephonyManager = null;
private boolean bRingingPhoneState = false;
// 获取Service并注册监听事件
mTelephonyManager = (TelephonyManager) getSystemService("phone");
mTelephonyManager.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
/**
* get phone current state
*/
PhoneStateListener phoneStateListener = new PhoneStateListener() {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_RINGING:
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
bRingingPhoneState = true;
break;
case TelephonyManager.CALL_STATE_IDLE:
break;
default:
break;
}
}
};