如何在设备呼叫时获得意图?

时间:2012-09-29 08:55:09

标签: android android-intent broadcastreceiver

当设备启动呼叫和结束呼叫时,如何获取我的注册BroadcastReceiver的意图?无论是来电还是来电都没关系。每次设备启动呼叫和结束呼叫时,我只需要获取Intent。

1 个答案:

答案 0 :(得分:1)

private class PhoneCallListener extends PhoneStateListener {


    @Override
    public void onCallStateChanged(int state, String incomingNumber) {

        if (TelephonyManager.CALL_STATE_RINGING == state) {

        }

        if (TelephonyManager.CALL_STATE_OFFHOOK == state) {

        }

        if (TelephonyManager.CALL_STATE_IDLE == state) {

        }
    }
}

你在onCreate()上添加:

PhoneCallListener phoneListener = new PhoneCallListener();
TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.listen(phoneListener,PhoneStateListener.LISTEN_CALL_STATE);