我在我的活动中使用电话侦听器,但在完成我的活动之后,AFER用户拨打电话,我的手机呼叫听众再也没有死了,再次发布了活动!请帮助我。

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

phonecalllistener类:

private class PhoneCallListener extends PhoneStateListener {
    boolean isPhoneCalling = false;
    @Override
    public void onCallStateChanged(int state, String incomingNumber) {

        if (TelephonyManager.CALL_STATE_RINGING == state) {
        }
        if (TelephonyManager.CALL_STATE_OFFHOOK == state) {
            isPhoneCalling = true;
        }
        if (TelephonyManager.CALL_STATE_IDLE == state) {
            if (isPhoneCalling) {
                isPhoneCalling = false;
                    Intent intent = getIntent();
                    startActivity(intent);
                }
            }
        }
    }
}
.

有帮助吗?

解决方案

文档说:

取消注册侦听器,通过侦听器对象并设置事件 pongesteListener#listen_none(0)

这里是文档

其他提示

您是否尝试将侦听器设置为NULL,

telephonyManager.listen(null,  PhoneStateListener.LISTEN_NONE);
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top