Stay organized with collections
Save and categorize content based on your preferences.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[null,null,["Last updated 2025-02-10 UTC."],[],[],null,["# SubscriptionManager.OnOpportunisticSubscriptionsChangedListener\n\nAdded in [API level 29](/guide/topics/manifest/uses-sdk-element#ApiLevels) \nSummary: [Ctors](#pubctors) \\| [Methods](#pubmethods) \\| [Inherited Methods](#inhmethods) \n\nSubscriptionManager.OnOpportunisticSubscriptionsChangedListener\n===============================================================\n\n*** ** * ** ***\n\n[Kotlin](/reference/kotlin/android/telephony/SubscriptionManager.OnOpportunisticSubscriptionsChangedListener \"View this page in Kotlin\") \\|Java\n\n\n`\npublic\nstatic\n\n\nclass\nSubscriptionManager.OnOpportunisticSubscriptionsChangedListener\n`\n\n\n`\n\nextends `[Object](/reference/java/lang/Object)`\n\n\n`\n\n`\n\n\n`\n\n|---|-----------------------------------------------------------------------------------|\n| [java.lang.Object](/reference/java/lang/Object) ||\n| ↳ | android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener |\n\n\u003cbr /\u003e\n\n*** ** * ** ***\n\nA listener class for monitoring changes to [SubscriptionInfo](/reference/android/telephony/SubscriptionInfo) records of opportunistic\nsubscriptions.\n\n\nOverride the onOpportunisticSubscriptionsChanged method in the object that extends this\nor [SubscriptionManager.addOnOpportunisticSubscriptionsChangedListener(java.util.concurrent.Executor, android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener)](/reference/android/telephony/SubscriptionManager#addOnOpportunisticSubscriptionsChangedListener(java.util.concurrent.Executor,%20android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener))\nto register your listener and to unregister invoke\n[SubscriptionManager.removeOnOpportunisticSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener)](/reference/android/telephony/SubscriptionManager#removeOnOpportunisticSubscriptionsChangedListener(android.telephony.SubscriptionManager.OnOpportunisticSubscriptionsChangedListener))\n\n\nPermissions android.Manifest.permission.READ_PHONE_STATE is required\nfor #onOpportunisticSubscriptionsChanged to be invoked.\n\nSummary\n-------\n\n| ### Public constructors ||\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|\n| ` `[OnOpportunisticSubscriptionsChangedListener](/reference/android/telephony/SubscriptionManager.OnOpportunisticSubscriptionsChangedListener#OnOpportunisticSubscriptionsChangedListener())`() ` |\n\n| ### Public methods ||\n|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` void` | ` `[onOpportunisticSubscriptionsChanged](/reference/android/telephony/SubscriptionManager.OnOpportunisticSubscriptionsChangedListener#onOpportunisticSubscriptionsChanged())`() ` Callback invoked when there is any change to any SubscriptionInfo. |\n\n| ### Inherited methods |\n|-----------------------|---|\n| From class ` `[java.lang.Object](/reference/java/lang/Object)` ` |---------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | ` `[Object](/reference/java/lang/Object) | ` `[clone](/reference/java/lang/Object#clone())`() ` Creates and returns a copy of this object. | | ` boolean` | ` `[equals](/reference/java/lang/Object#equals(java.lang.Object))`(`[Object](/reference/java/lang/Object)` obj) ` Indicates whether some other object is \"equal to\" this one. | | ` void` | ` `[finalize](/reference/java/lang/Object#finalize())`() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. | | ` final `[Class](/reference/java/lang/Class)`\u003c?\u003e` | ` `[getClass](/reference/java/lang/Object#getClass())`() ` Returns the runtime class of this `Object`. | | ` int` | ` `[hashCode](/reference/java/lang/Object#hashCode())`() ` Returns a hash code value for the object. | | ` final void` | ` `[notify](/reference/java/lang/Object#notify())`() ` Wakes up a single thread that is waiting on this object's monitor. | | ` final void` | ` `[notifyAll](/reference/java/lang/Object#notifyAll())`() ` Wakes up all threads that are waiting on this object's monitor. | | ` `[String](/reference/java/lang/String) | ` `[toString](/reference/java/lang/Object#toString())`() ` Returns a string representation of the object. | | ` final void` | ` `[wait](/reference/java/lang/Object#wait(long,%20int))`(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` `[wait](/reference/java/lang/Object#wait(long))`(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` `[wait](/reference/java/lang/Object#wait())`() ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*. | ||\n\nPublic constructors\n-------------------\n\n### OnOpportunisticSubscriptionsChangedListener\n\n```\npublic OnOpportunisticSubscriptionsChangedListener ()\n```\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nPublic methods\n--------------\n\n### onOpportunisticSubscriptionsChanged\n\nAdded in [API level 29](/guide/topics/manifest/uses-sdk-element#ApiLevels) \n\n```\npublic void onOpportunisticSubscriptionsChanged ()\n```\n\nCallback invoked when there is any change to any SubscriptionInfo. Typically\nthis method would invoke [SubscriptionManager.getActiveSubscriptionInfoList()](/reference/android/telephony/SubscriptionManager#getActiveSubscriptionInfoList())\n\n\u003cbr /\u003e"]]