TelephonyManager.RegisterTelephonyCallback Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
RegisterTelephonyCallback(IExecutor, TelephonyCallback) |
Registers a callback object to receive notification of changes in specified telephony states. |
RegisterTelephonyCallback(Int32, IExecutor, TelephonyCallback) |
Registers a callback object to receive notification of changes in specified telephony states. |
RegisterTelephonyCallback(IExecutor, TelephonyCallback)
Registers a callback object to receive notification of changes in specified telephony states.
[Android.Runtime.Register("registerTelephonyCallback", "(Ljava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V", "GetRegisterTelephonyCallback_Ljava_util_concurrent_Executor_Landroid_telephony_TelephonyCallback_Handler", ApiSince=31)]
public virtual void RegisterTelephonyCallback (Java.Util.Concurrent.IExecutor executor, Android.Telephony.TelephonyCallback callback);
[<Android.Runtime.Register("registerTelephonyCallback", "(Ljava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V", "GetRegisterTelephonyCallback_Ljava_util_concurrent_Executor_Landroid_telephony_TelephonyCallback_Handler", ApiSince=31)>]
abstract member RegisterTelephonyCallback : Java.Util.Concurrent.IExecutor * Android.Telephony.TelephonyCallback -> unit
override this.RegisterTelephonyCallback : Java.Util.Concurrent.IExecutor * Android.Telephony.TelephonyCallback -> unit
Parameters
- executor
- IExecutor
The executor of where the callback will execute.
- callback
- TelephonyCallback
The TelephonyCallback
object to register. The caller should hold a
reference to the callback. The framework only holds a weak reference.
- Attributes
Remarks
Registers a callback object to receive notification of changes in specified telephony states.
To register a callback, pass a TelephonyCallback
which implements interfaces of events. For example, FakeServiceStateCallback extends TelephonyCallback
implements TelephonyCallback.ServiceStateListener
.
At registration, and when a specified telephony state changes, the telephony manager invokes the appropriate callback method on the callback object and passes the current (updated) values.
Note: Be aware of the permission requirements stated on the TelephonyCallback
listeners you implement. Your application must be granted these permissions in order to register a TelephonyCallback
which requires them; a SecurityException
will be thrown if you do not hold the required permissions for all TelephonyCallback
listeners you implement.
If this TelephonyManager object has been created with #createForSubscriptionId
, applies to the given subId. Otherwise, applies to SubscriptionManager#getDefaultSubscriptionId()
. To register events for multiple subIds, pass a separate callback object to each TelephonyManager object created with #createForSubscriptionId
.
Note: if you call this method while in the middle of a binder transaction, you <b>must</b> call android.os.Binder#clearCallingIdentity()
before calling this method. A SecurityException
will be thrown otherwise.
This API should be used sparingly -- large numbers of callbacks will cause system instability. If a process has registered too many callbacks without unregistering them, it may encounter an IllegalStateException
when trying to register more callbacks.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.
Applies to
RegisterTelephonyCallback(Int32, IExecutor, TelephonyCallback)
Registers a callback object to receive notification of changes in specified telephony states.
[Android.Runtime.Register("registerTelephonyCallback", "(ILjava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V", "GetRegisterTelephonyCallback_ILjava_util_concurrent_Executor_Landroid_telephony_TelephonyCallback_Handler", ApiSince=33)]
public virtual void RegisterTelephonyCallback (int includeLocationData, Java.Util.Concurrent.IExecutor executor, Android.Telephony.TelephonyCallback callback);
[<Android.Runtime.Register("registerTelephonyCallback", "(ILjava/util/concurrent/Executor;Landroid/telephony/TelephonyCallback;)V", "GetRegisterTelephonyCallback_ILjava_util_concurrent_Executor_Landroid_telephony_TelephonyCallback_Handler", ApiSince=33)>]
abstract member RegisterTelephonyCallback : int * Java.Util.Concurrent.IExecutor * Android.Telephony.TelephonyCallback -> unit
override this.RegisterTelephonyCallback : int * Java.Util.Concurrent.IExecutor * Android.Telephony.TelephonyCallback -> unit
Parameters
- includeLocationData
- Int32
Specifies if the caller would like to receive location related information.
- executor
- IExecutor
The executor of where the callback will execute.
- callback
- TelephonyCallback
The TelephonyCallback
object to register. The caller should hold a
reference to the callback. The framework only holds a weak reference.
- Attributes
Remarks
Registers a callback object to receive notification of changes in specified telephony states.
To register a callback, pass a TelephonyCallback
which implements interfaces of events. For example, FakeServiceStateCallback extends TelephonyCallback
implements TelephonyCallback.ServiceStateListener
.
At registration, and when a specified telephony state changes, the telephony manager invokes the appropriate callback method on the callback object and passes the current (updated) values.
If this TelephonyManager object has been created with #createForSubscriptionId
, applies to the given subId. Otherwise, applies to SubscriptionManager#getDefaultSubscriptionId()
. To register events for multiple subIds, pass a separate callback object to each TelephonyManager object created with #createForSubscriptionId
.
Note: if you call this method while in the middle of a binder transaction, you <b>must</b> call android.os.Binder#clearCallingIdentity()
before calling this method. A SecurityException
will be thrown otherwise.
This API should be used sparingly -- large numbers of callbacks will cause system instability. If a process has registered too many callbacks without unregistering them, it may encounter an IllegalStateException
when trying to register more callbacks.
There's another way to renounce permissions with a custom context AttributionSource.Builder#setRenouncedPermissions(Set<String>)
but only for system apps. To avoid confusion, calling this method supersede renouncing permissions with a custom context.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.