Android:如何在收到和结束通话时显示消息?

时间:2012-05-01 20:30:30

标签: android telephony

我正在应用以下代码来显示三种状态的消息,

1)拒绝电话 2)收到电话 3)通话结束

     TelephonyManager telephonyManager;

     PhoneStateListener listener = new PhoneStateListener() {

public void onCallStateChanged(int state,String incomingNumber) {

switch (state) {

case TelephonyManager.CALL_STATE_IDLE:


Toast.makeText(c, "Call Ended..",Toast.LENGTH_LONG).show();

    Log.i("stop", "Call Ended....");

        break;

case TelephonyManager.CALL_STATE_OFFHOOK:

     Toast.makeText(c, "Call Picked..",Toast.LENGTH_LONG).show();
    Log.i("received", "Call Picked....");


        break;

case TelephonyManager.CALL_STATE_RINGING:

     Toast.makeText(c, "Call Ringing.." + phonenumber,
    Toast.LENGTH_LONG).show();
                break;
    }

    }

    };
// Register the listener with the telephony manager
telephonyManager.listen(listener,PhoneStateListener.LISTEN_CALL_STATE);

        }

当我拒绝接听电话时,它也会进入hook_state,如何显示两个单独接收的电话和拒绝/拒绝的电话

提前致谢..

请帮忙

1 个答案:

答案 0 :(得分:0)

我想你一定已经解决了这个问题...... 但对于有类似问题的其他人。

如果您拒绝接听电话,则电话不会进入OFFHOOK状态。

首先进入“RINGING”状态接听来电,然后进入IDLE状态。

对于拨出电话,它会进入OFFHOOK状态,然后进入IDLE状态。