Share via


TelephonyManager.RegisterTelephonyCallback メソッド

定義

オーバーロード

RegisterTelephonyCallback(IExecutor, TelephonyCallback)

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

RegisterTelephonyCallback(Int32, IExecutor, TelephonyCallback)

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

RegisterTelephonyCallback(IExecutor, TelephonyCallback)

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

[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

パラメーター

executor
IExecutor

コールバックが実行される場所の Executor。

callback
TelephonyCallback

登録する TelephonyCallback オブジェクト。 呼び出し元はコールバックへの参照を保持する必要があります。 フレームワークは弱い参照のみを保持します。

属性

注釈

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

コールバックを登録するには、イベントのインターフェイスを TelephonyCallback 実装する を渡します。 たとえば、FakeServiceStateCallback は を実装しますTelephonyCallbackTelephonyCallback.ServiceStateListener

登録時、および指定されたテレフォニー状態が変更されると、テレフォニー マネージャーはコールバック オブジェクトに対して適切なコールバック メソッドを呼び出し、現在の (更新された) 値を渡します。

注: 実装するリスナーに記載されているアクセス許可の要件に TelephonyCallback 注意してください。 これらのアクセス許可を必要とする SecurityException を登録TelephonyCallbackするには、アプリケーションにこれらのアクセス許可が付与されている必要があります。実装するすべてのTelephonyCallbackリスナーに必要なアクセス許可を保持していない場合は、 がスローされます。

このテレフォニーManager オブジェクトが で #createForSubscriptionId作成されている場合は、指定された subId に適用されます。 それ以外の場合は、 に SubscriptionManager#getDefaultSubscriptionId()適用されます。 複数の subId のイベントを登録するには、 で作成された各テレフォニーManager オブジェクトに個別のコールバック オブジェクトを #createForSubscriptionId渡します。

注: バインダー トランザクションの途中でこのメソッドを呼び出す場合は、<このメソッドを呼び出す前に b>を呼び出android.os.Binder#clearCallingIdentity()す必要があります<。> それ以外の SecurityException 場合は、 がスローされます。

この API は慎重に使用する必要があります。コールバックの数が多い場合、システムが不安定になります。 プロセスが登録を解除せずに登録したコールバックが多すぎる場合は、より多くのコールバックを登録しようとしたときに が発生 IllegalStateException する可能性があります。

android.telephony.TelephonyManager.registerTelephonyCallback(java.util.concurrent.Executor, android.telephony.TelephonyCallback)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象

RegisterTelephonyCallback(Int32, IExecutor, TelephonyCallback)

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

[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

パラメーター

includeLocationData
Int32

呼び出し元が場所に関連する情報を受信するかどうかを指定します。

executor
IExecutor

コールバックが実行される場所の Executor。

callback
TelephonyCallback

登録する TelephonyCallback オブジェクト。 呼び出し元はコールバックへの参照を保持する必要があります。 フレームワークは弱い参照のみを保持します。

属性

注釈

指定したテレフォニー状態の変更の通知を受信するコールバック オブジェクトを登録します。

コールバックを登録するには、イベントのインターフェイスを TelephonyCallback 実装する を渡します。 たとえば、FakeServiceStateCallback は を実装しますTelephonyCallbackTelephonyCallback.ServiceStateListener

登録時、および指定されたテレフォニー状態が変更されると、テレフォニー マネージャーはコールバック オブジェクトに対して適切なコールバック メソッドを呼び出し、現在の (更新された) 値を渡します。

このテレフォニーManager オブジェクトが で #createForSubscriptionId作成されている場合は、指定された subId に適用されます。 それ以外の場合は、 に SubscriptionManager#getDefaultSubscriptionId()適用されます。 複数の subId のイベントを登録するには、 で作成された各テレフォニーManager オブジェクトに個別のコールバック オブジェクトを #createForSubscriptionId渡します。

注: バインダー トランザクションの途中でこのメソッドを呼び出す場合は、<このメソッドを呼び出す前に b>を呼び出android.os.Binder#clearCallingIdentity()す必要があります<。> それ以外の SecurityException 場合は、 がスローされます。

この API は慎重に使用する必要があります。コールバックの数が多い場合、システムが不安定になります。 プロセスが登録を解除せずに登録したコールバックが多すぎる場合は、より多くのコールバックを登録しようとしたときに が発生 IllegalStateException する可能性があります。

カスタム コンテキスト AttributionSource.Builder#setRenouncedPermissions(Set<String>) を使用してアクセス許可を放棄する別の方法がありますが、システム アプリに対してのみ使用できます。 混乱を避けるために、このメソッドを呼び出すと、カスタム コンテキストで権限を放棄するよりも優先されます。

android.telephony.TelephonyManager.registerTelephonyCallback(int, java.util.concurrent.Executor, android.telephony.TelephonyCallback)Java ドキュメント。

このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。

適用対象