ConnectivityManager.RequestNetwork Método

Definición

Sobrecargas

RequestNetwork(NetworkRequest, ConnectivityManager+NetworkCallback, Handler, Int32)

[Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;I)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_IHandler", ApiSince=26)]
public virtual void RequestNetwork(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback, Android.OS.Handler handler, int timeoutMs);
[<Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;I)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_IHandler", ApiSince=26)>]
abstract member RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler * int -> unit
override this.RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler * int -> unit

Parámetros

request
NetworkRequest
handler
Handler
timeoutMs
Int32
Atributos

Comentarios

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

RequestNetwork(NetworkRequest, ConnectivityManager+NetworkCallback, Int32)

[Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;I)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_IHandler", ApiSince=26)]
public virtual void RequestNetwork(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback, int timeoutMs);
[<Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;I)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_IHandler", ApiSince=26)>]
abstract member RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * int -> unit
override this.RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * int -> unit

Parámetros

request
NetworkRequest
timeoutMs
Int32
Atributos

Comentarios

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

RequestNetwork(NetworkRequest, PendingIntent)

Solicite una red para satisfacer un conjunto de NetworkCapabilities.

[Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/app/PendingIntent;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_app_PendingIntent_Handler", ApiSince=22)]
public virtual void RequestNetwork(Android.Net.NetworkRequest request, Android.App.PendingIntent operation);
[<Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/app/PendingIntent;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_app_PendingIntent_Handler", ApiSince=22)>]
abstract member RequestNetwork : Android.Net.NetworkRequest * Android.App.PendingIntent -> unit
override this.RequestNetwork : Android.Net.NetworkRequest * Android.App.PendingIntent -> unit

Parámetros

request
NetworkRequest

NetworkRequest que describe esta solicitud.

operation
PendingIntent

Acción que se va a realizar cuando la red está disponible (corresponde a la NetworkCallback#onAvailable llamada. Normalmente procede de PendingIntent#getBroadcast. No puede ser NULL.

Atributos

Comentarios

Solicite una red para satisfacer un conjunto de NetworkCapabilities.

Esta función se comporta de forma idéntica a la versión que toma una networkCallback, pero en lugar de NetworkCallback se PendingIntent usa . Esto significa que la solicitud puede sobrevivir a la aplicación que realiza la llamada y volver a llamar cuando se encuentra una red adecuada.

La operación es una difusión de intención que va a un receptor de difusión que registró con o a través del < receptor> etiqueta en un archivo de AndroidManifest.xml

La intención de la operación se entrega con dos extras, un Network extra con tipo denominado #EXTRA_NETWORK y un NetworkRequest extra con tipo denominado #EXTRA_NETWORK_REQUEST que contiene los parámetros de solicitudes originales. Es importante crear una nueva NetworkCallback solicitud basada antes de completar el procesamiento de la intención para reservar la red o se publicará poco después de procesar la intención.

Si ya hay una solicitud para esta intención registrada (con la igualdad de dos intenciones definidas por Intent#filterEquals), se quitará y reemplazará por esta, liberando eficazmente el anterior NetworkRequest.

La solicitud se puede liberar normalmente llamando a #releaseNetworkRequest(android.app.PendingIntent).

Actualmente no se admite solicitar una red con o NetworkCapabilities#NET_CAPABILITY_VALIDATEDNetworkCapabilities#NET_CAPABILITY_CAPTIVE_PORTAL como estos NetworkCapabilities representan que una red determinada nunca puede alcanzar y si una red alcanzará estos estados es desconocida antes de abrir la red para que el marco no sepa cómo satisfacer una solicitud con estas funcionalidades.

Para evitar problemas de rendimiento debido a que las aplicaciones pierden devoluciones de llamada, el sistema limitará el número de solicitudes pendientes a 100 por aplicación (identificadas por su UID), compartidas con todas las variantes de este método, de #registerNetworkCallback así como ConnectivityDiagnosticsManager#registerConnectivityDiagnosticsCallback. La solicitud de una red con este método contará hacia este límite. Si se supera este límite, se producirá una excepción. Para evitar alcanzar este problema y conservar los recursos, asegúrese de anular el registro de las devoluciones de llamada con #unregisterNetworkCallback(PendingIntent) o #releaseNetworkRequest(PendingIntent).

Este método requiere que el autor de la llamada contenga el android.Manifest.permission#CHANGE_NETWORK_STATE permiso o la capacidad de modificar la configuración del sistema según lo determine android.provider.Settings.System#canWrite.

Java documentación para android.net.ConnectivityManager.requestNetwork(android.net.NetworkRequest, android.app.PendingIntent).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

RequestNetwork(NetworkRequest, ConnectivityManager+NetworkCallback)

Solicite una red para satisfacer un conjunto de NetworkCapabilities.

[Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Handler")]
public virtual void RequestNetwork(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback);
[<Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Handler")>]
abstract member RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback -> unit
override this.RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback -> unit

Parámetros

request
NetworkRequest

NetworkRequest que describe esta solicitud.

networkCallback
ConnectivityManager.NetworkCallback

que ConnectivityManager.NetworkCallback se va a utilizar para esta solicitud. Tenga en cuenta que la devolución de llamada no debe compartirse: especifican de forma única esta solicitud.

Atributos

Excepciones

si request especifica cualquier mutable NetworkCapabilities.

Comentarios

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a

RequestNetwork(NetworkRequest, ConnectivityManager+NetworkCallback, Handler)

[Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_Handler", ApiSince=26)]
public virtual void RequestNetwork(Android.Net.NetworkRequest request, Android.Net.ConnectivityManager.NetworkCallback networkCallback, Android.OS.Handler handler);
[<Android.Runtime.Register("requestNetwork", "(Landroid/net/NetworkRequest;Landroid/net/ConnectivityManager$NetworkCallback;Landroid/os/Handler;)V", "GetRequestNetwork_Landroid_net_NetworkRequest_Landroid_net_ConnectivityManager_NetworkCallback_Landroid_os_Handler_Handler", ApiSince=26)>]
abstract member RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler -> unit
override this.RequestNetwork : Android.Net.NetworkRequest * Android.Net.ConnectivityManager.NetworkCallback * Android.OS.Handler -> unit

Parámetros

request
NetworkRequest
handler
Handler
Atributos

Comentarios

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a