Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

# TelephonyCallback.CallDisconnectCauseListener

*** ** * ** ***

` public static interface TelephonyCallback.CallDisconnectCauseListener `   
` `

|---|
| android.telephony.TelephonyCallback.CallDisconnectCauseListener |

<br />

*** ** * ** ***

Interface for call disconnect cause listener.

## Summary

| ### Public methods ||
|---|---|
| ` abstract void` | ` https://developer.android.com/reference/android/telephony/TelephonyCallback.CallDisconnectCauseListener#onCallDisconnectCauseChanged(int,%20int)(int disconnectCause, int preciseDisconnectCause) ` Callback invoked when call disconnect cause changes on the registered subscription. |

## Public methods

### onCallDisconnectCauseChanged

Added in [API level 31](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void onCallDisconnectCauseChanged (int disconnectCause, 
                int preciseDisconnectCause)
```

Callback invoked when call disconnect cause changes on the registered subscription. Note, the registration subscription ID comes from `https://developer.android.com/reference/android/telephony/TelephonyManager` object which registers TelephonyCallback by `https://developer.android.com/reference/android/telephony/TelephonyManager#registerTelephonyCallback(java.util.concurrent.Executor,%20android.telephony.TelephonyCallback)`. If this TelephonyManager object was created with `https://developer.android.com/reference/android/telephony/TelephonyManager#createForSubscriptionId(int)`, then the callback applies to the subscription ID. Otherwise, this callback applies to `https://developer.android.com/reference/android/telephony/SubscriptionManager#getDefaultSubscriptionId()`.   

Requires `https://developer.android.com/reference/android/Manifest.permission#READ_PRECISE_PHONE_STATE`

<br />

| Parameters ||
|---|---|
| `disconnectCause` | `int`: the disconnect cause. Value is one of the following: - `https://developer.android.com/reference/android/telephony/DisconnectCause#NOT_VALID` - `https://developer.android.com/reference/android/telephony/DisconnectCause#NOT_DISCONNECTED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#INCOMING_MISSED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#NORMAL` - `https://developer.android.com/reference/android/telephony/DisconnectCause#LOCAL` - `https://developer.android.com/reference/android/telephony/DisconnectCause#BUSY` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CONGESTION` - `https://developer.android.com/reference/android/telephony/DisconnectCause#MMI` - `https://developer.android.com/reference/android/telephony/DisconnectCause#INVALID_NUMBER` - `https://developer.android.com/reference/android/telephony/DisconnectCause#NUMBER_UNREACHABLE` - `https://developer.android.com/reference/android/telephony/DisconnectCause#SERVER_UNREACHABLE` - `https://developer.android.com/reference/android/telephony/DisconnectCause#INVALID_CREDENTIALS` - `https://developer.android.com/reference/android/telephony/DisconnectCause#OUT_OF_NETWORK` - `https://developer.android.com/reference/android/telephony/DisconnectCause#SERVER_ERROR` - `https://developer.android.com/reference/android/telephony/DisconnectCause#TIMED_OUT` - `https://developer.android.com/reference/android/telephony/DisconnectCause#LOST_SIGNAL` - `https://developer.android.com/reference/android/telephony/DisconnectCause#LIMIT_EXCEEDED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#INCOMING_REJECTED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#POWER_OFF` - `https://developer.android.com/reference/android/telephony/DisconnectCause#OUT_OF_SERVICE` - `https://developer.android.com/reference/android/telephony/DisconnectCause#ICC_ERROR` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CALL_BARRED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#FDN_BLOCKED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CS_RESTRICTED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CS_RESTRICTED_NORMAL` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CS_RESTRICTED_EMERGENCY` - `https://developer.android.com/reference/android/telephony/DisconnectCause#UNOBTAINABLE_NUMBER` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_LOCKED_UNTIL_POWER_CYCLE` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_DROP` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_INTERCEPT` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_REORDER` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_SO_REJECT` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_RETRY_ORDER` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_ACCESS_FAILURE` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_PREEMPTED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_NOT_EMERGENCY` - `https://developer.android.com/reference/android/telephony/DisconnectCause#CDMA_ACCESS_BLOCKED` - `https://developer.android.com/reference/android/telephony/DisconnectCause#ERROR_UNSPECIFIED` |
| `preciseDisconnectCause` | `int`: the precise disconnect cause. Value is one of the following: |