# TelephonyCallback.PreciseDataConnectionStateListener

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

# TelephonyCallback.PreciseDataConnectionStateListener

*** ** * ** ***

[Kotlin](https://developer.android.com/reference/kotlin/android/telephony/TelephonyCallback.PreciseDataConnectionStateListener "View this page in Kotlin")\|Java

`
public
static


interface
TelephonyCallback.PreciseDataConnectionStateListener
`  
`


`

|------------------------------------------------------------------------|
| android.telephony.TelephonyCallback.PreciseDataConnectionStateListener |

<br />

*** ** * ** ***

Interface for precise data connection state listener.

## Summary

|                                                                                                                                                                                                                                               ### Public methods                                                                                                                                                                                                                                               ||
|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` abstract void` | ` `[onPreciseDataConnectionStateChanged](https://developer.android.com/reference/android/telephony/TelephonyCallback.PreciseDataConnectionStateListener#onPreciseDataConnectionStateChanged(android.telephony.PreciseDataConnectionState))`(`[PreciseDataConnectionState](https://developer.android.com/reference/android/telephony/PreciseDataConnectionState)` dataConnectionState) ` Callback providing update about the default/internet data connection on the registered subscription. |

## Public methods

### onPreciseDataConnectionStateChanged

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

```
public abstract void onPreciseDataConnectionStateChanged (PreciseDataConnectionState dataConnectionState)
```

Callback providing update about the default/internet data connection on the registered subscription.

Note, the registration subscription ID comes from[TelephonyManager](https://developer.android.com/reference/android/telephony/TelephonyManager)object which registers TelephonyCallback by[TelephonyManager.registerTelephonyCallback(Executor, TelephonyCallback)](https://developer.android.com/reference/android/telephony/TelephonyManager#registerTelephonyCallback(java.util.concurrent.Executor,%20android.telephony.TelephonyCallback)). If this TelephonyManager object was created with[TelephonyManager.createForSubscriptionId(int)](https://developer.android.com/reference/android/telephony/TelephonyManager#createForSubscriptionId(int)), then the callback applies to the subscription ID. Otherwise, this callback applies to[SubscriptionManager.getDefaultSubscriptionId()](https://developer.android.com/reference/android/telephony/SubscriptionManager#getDefaultSubscriptionId()). The calling app should have carrier privileges (see[TelephonyManager.hasCarrierPrivileges](https://developer.android.com/reference/android/telephony/TelephonyManager#hasCarrierPrivileges())) if it does not have the[Manifest.permission.READ_PRECISE_PHONE_STATE](https://developer.android.com/reference/android/Manifest.permission#READ_PRECISE_PHONE_STATE).  
Requires[Manifest.permission.READ_PRECISE_PHONE_STATE](https://developer.android.com/reference/android/Manifest.permission#READ_PRECISE_PHONE_STATE)

<br />

|                                                                                                Parameters                                                                                                ||
|-----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `dataConnectionState` | `PreciseDataConnectionState`:[PreciseDataConnectionState](https://developer.android.com/reference/android/telephony/PreciseDataConnectionState)This value cannot be`null`. <br /> |