# SubscriptionManager.OnSubscriptionsChangedListener

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

# OnSubscriptionsChangedListener

*** ** * ** ***

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

```
open class OnSubscriptionsChangedListener
```

|---|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                                                                                               ||
| ↳ | [android.telephony.SubscriptionManager.OnSubscriptionsChangedListener](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager.OnSubscriptionsChangedListener#) |

A listener class for monitoring changes to[SubscriptionInfo](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionInfo)records.

Override the onSubscriptionsChanged method in the object that extends this class and pass it to[addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener)](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager#addOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener))to register your listener and to unregister invoke[removeOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener)](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager#removeOnSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnSubscriptionsChangedListener))

Permissions android.Manifest.permission.READ_PHONE_STATE is required for #onSubscriptionsChanged to be invoked.

## Summary

|                                                                                                           Public constructors                                                                                                           ||
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [OnSubscriptionsChangedListener](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager.OnSubscriptionsChangedListener#OnSubscriptionsChangedListener())`()` Create an OnSubscriptionsChangedListener. |

|                                                                                                                                                                                                   Public methods                                                                                                                                                                                                    ||
|----------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| open[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) | [onSubscriptionsChanged](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager.OnSubscriptionsChangedListener#onSubscriptionsChanged())`()` Callback invoked when there is any change to any SubscriptionInfo, as well as once on registering for changes with #addOnSubscriptionsChangedListener. |

## Public constructors

### OnSubscriptionsChangedListener

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

```
OnSubscriptionsChangedListener()
```

Create an OnSubscriptionsChangedListener. For callers targeting[Build.VERSION_CODES.P](https://developer.android.com/reference/kotlin/android/os/Build.VERSION_CODES.html#P:kotlin.Int)or earlier, this can only be called on a thread that already has a prepared Looper. Callers targeting Q or later should subsequently use[SubscriptionManager.addOnSubscriptionsChangedListener(](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager#addOnSubscriptionsChangedListener(java.util.concurrent.Executor,%20android.telephony.SubscriptionManager.OnSubscriptionsChangedListener)). On OS versions prior to[Build.VERSION_CODES.VANILLA_ICE_CREAM](https://developer.android.com/reference/kotlin/android/os/Build.VERSION_CODES.html#VANILLA_ICE_CREAM:kotlin.Int)callers should assume that this call will fail if invoked on a thread that does not already have a prepared looper.

## Public methods

### onSubscriptionsChanged

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

```
open fun onSubscriptionsChanged(): Unit
```

Callback invoked when there is any change to any SubscriptionInfo, as well as once on registering for changes with #addOnSubscriptionsChangedListener. Typically this method would invoke[getActiveSubscriptionInfoList](https://developer.android.com/reference/kotlin/android/telephony/SubscriptionManager#getActiveSubscriptionInfoList())