ConnectivityManager.RegisterNetworkCallback メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
| 名前 | 説明 |
|---|---|
| RegisterNetworkCallback(NetworkRequest, ConnectivityManager+NetworkCallback, Handler) | |
| RegisterNetworkCallback(NetworkRequest, PendingIntent) |
指定された |
| RegisterNetworkCallback(NetworkRequest, ConnectivityManager+NetworkCallback) |
指定された NetworkRequestを満たすすべてのネットワークに関する通知を受信するように登録します。 |
RegisterNetworkCallback(NetworkRequest, ConnectivityManager+NetworkCallback, Handler)
[Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_Handler", ApiSince=26)]
[Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")]
public virtual void RegisterNetworkCallback(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback, Android.OS.Handler handler);
[<Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_Handler", ApiSince=26)>]
[<Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")>]
abstract member RegisterNetworkCallback : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler -> unit
override this.RegisterNetworkCallback : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler -> unit
パラメーター
- request
- NetworkRequest
- networkCallback
- ConnectivityManager.NetworkCallback
- handler
- Handler
- 属性
注釈
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
RegisterNetworkCallback(NetworkRequest, PendingIntent)
指定された NetworkRequestを満たすネットワークが使用可能な場合に送信される PendingIntent を登録します。
[Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/app/PendingIntent;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_app_PendingIntent_Handler", ApiSince=23)]
[Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")]
public virtual void RegisterNetworkCallback(Android.Net.NetworkRequest request, Android.App.PendingIntent operation);
[<Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/app/PendingIntent;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_app_PendingIntent_Handler", ApiSince=23)>]
[<Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")>]
abstract member RegisterNetworkCallback : Android.Net.NetworkRequest * Android.App.PendingIntent -> unit
override this.RegisterNetworkCallback : Android.Net.NetworkRequest * Android.App.PendingIntent -> unit
パラメーター
- request
- NetworkRequest
NetworkRequest この要求を記述します。
- operation
- PendingIntent
ネットワークが使用可能になったときに実行するアクション ( NetworkCallback#onAvailable 呼び出しに対応します。 通常、 PendingIntent#getBroadcastから取得されます。 null にすることはできません。
- 属性
注釈
指定された NetworkRequestを満たすネットワークが使用可能な場合に送信される PendingIntent を登録します。
この関数は NetworkCallback を受け取るバージョンと同じように動作しますが、 NetworkCallback の代わりに PendingIntent が使用されます。 これは、要求が呼び出し元のアプリケーションよりも長く、適切なネットワークが見つかったときに呼び出される可能性があることを意味します。
この操作は、
操作インテントには、#EXTRA_NETWORKと呼ばれるNetwork型指定されたエクストラと、元の要求パラメーターを含む#EXTRA_NETWORK_REQUEST呼び出されたNetworkRequest型指定された extra という 2 つのエクストラが提供されます。
( Intent#filterEquals によって定義された 2 つの意図の等価性を持つ) この意図の要求が既に登録されている場合は、削除され、これに置き換えられ、前の NetworkRequestが実質的に解放されます。
要求は、 #unregisterNetworkCallback(android.app.PendingIntent)を呼び出すことによって通常どおりに解放される場合があります。
アプリによるコールバックのリークによるパフォーマンスの問題を回避するために、システムでは、未処理の要求の数をアプリごとに 100 個 (UID で識別) に制限し、このメソッドのすべてのバリアント ( #requestNetwork および ConnectivityDiagnosticsManager#registerConnectivityDiagnosticsCallback) と共有します。 この方法でネットワークを要求すると、この制限にカウントされます。 この制限を超えると、例外がスローされます。 この問題が発生しないようにし、リソースを節約するには、 #unregisterNetworkCallback(PendingIntent) または #releaseNetworkRequest(PendingIntent)を使用してコールバックの登録を解除してください。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
RegisterNetworkCallback(NetworkRequest, ConnectivityManager+NetworkCallback)
指定された NetworkRequestを満たすすべてのネットワークに関する通知を受信するように登録します。
[Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Handler")]
[Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")]
public virtual void RegisterNetworkCallback(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback);
[<Android.Runtime.Register("registerNetworkCallback", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;)V", "GetRegisterNetworkCallback_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Handler")>]
[<Android.Runtime.RequiresPermission("android.permission.ACCESS_NETWORK_STATE")>]
abstract member RegisterNetworkCallback : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback -> unit
override this.RegisterNetworkCallback : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback -> unit
パラメーター
- request
- NetworkRequest
NetworkRequest この要求を記述します。
- networkCallback
- ConnectivityManager.NetworkCallback
システムが適切なネットワーク変更状態として呼び出す ConnectivityManager.NetworkCallback 。
- 属性
注釈
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。