Question

Je suis en utilisant un écouteur d'appel téléphonique dans mon activité, mais après avoir terminé mon activité, l'utilisateur de l'Afer a appelé, mon téléphone d'appel de téléphone n'est pas mort et briguer l'activité à nouveau !!S'il vous plaît aidez-moi.

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

Classe de 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);
                }
            }
        }
    }
}

Était-ce utile?

La solution

La documentation dit:

Pour enregistrer un auditeur, passez l'objet à l'écoute et définissez les événements Argument à PhoneStatelistener # Écouter_none (0)

Voici le lien vers le DOCS .

Autres conseils

Avez-vous essayé de définir l'auditeur à NULL comme,

telephonyManager.listen(null,  PhoneStateListener.LISTEN_NONE);

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top