Android: Pourquoi Phonecalllistener est-il toujours en vie après la fin de l'activité?
-
12-12-2019 - |
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);
}
}
}
}
}
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