/**@class android.net.NetworkAgent @extends android.os.Handler A Utility class for handling for communicating between bearer-specific code and ConnectivityService. A bearer may have more than one NetworkAgent if it can simultaneously support separate networks (IMS / Internet / MMS Apns on cellular, or perhaps connections with different SSID or P2P for Wi-Fi). @hide */ var NetworkAgent = { /***/ netId : "null", /** Sent by ConnectivityService to the NetworkAgent to inform it of suspected connectivity problems on its network. The NetworkAgent should take steps to verify and correct connectivity. */ CMD_SUSPECT_BAD : "528384", /** Sent by the NetworkAgent (note the EVENT vs CMD prefix) to ConnectivityService to pass the current NetworkInfo (connection state). Sent when the NetworkInfo changes, mainly due to change of state. obj = NetworkInfo */ EVENT_NETWORK_INFO_CHANGED : "528385", /** Sent by the NetworkAgent to ConnectivityService to pass the current NetworkCapabilties. obj = NetworkCapabilities */ EVENT_NETWORK_CAPABILITIES_CHANGED : "528386", /** Sent by the NetworkAgent to ConnectivityService to pass the current NetworkProperties. obj = NetworkProperties */ EVENT_NETWORK_PROPERTIES_CHANGED : "528387", /***/ WIFI_BASE_SCORE : "60", /** Sent by the NetworkAgent to ConnectivityService to pass the current network score. obj = network score Integer */ EVENT_NETWORK_SCORE_CHANGED : "528388", /** Sent by the NetworkAgent to ConnectivityService to add new UID ranges to be forced into this Network. For VPNs only. obj = UidRange[] to forward */ EVENT_UID_RANGES_ADDED : "528389", /** Sent by the NetworkAgent to ConnectivityService to remove UID ranges from being forced into this Network. For VPNs only. obj = UidRange[] to stop forwarding */ EVENT_UID_RANGES_REMOVED : "528390", /** Sent by ConnectivityService to the NetworkAgent to inform the agent of the networks status - whether we could use the network or could not, due to either a bad network configuration (no internet link) or captive portal. arg1 = either {@code VALID_NETWORK} or {@code INVALID_NETWORK} */ CMD_REPORT_NETWORK_STATUS : "528391", /***/ VALID_NETWORK : "1", /***/ INVALID_NETWORK : "2", /** Sent by the NetworkAgent to ConnectivityService to indicate this network was explicitly selected. This should be sent before the NetworkInfo is marked CONNECTED so it can be given special treatment at that time. obj = boolean indicating whether to use this network even if unvalidated */ EVENT_SET_EXPLICITLY_SELECTED : "528392", /** Sent by ConnectivityService to the NetworkAgent to inform the agent of whether the network should in the future be used even if not validated. This decision is made by the user, but it is the network transport's responsibility to remember it. arg1 = 1 if true, 0 if false */ CMD_SAVE_ACCEPT_UNVALIDATED : "528393", /**Sent by ConnectivityService to the NetworkAgent to inform the agent to pull the underlying network connection for updated bandwidth information. */ CMD_REQUEST_BANDWIDTH_UPDATE : "528394", /** Sent by ConnectivityService to the NeworkAgent to inform the agent to avoid automatically reconnecting to this network (e.g. via autojoin). Happens when user selects "No" option on the "Stay connected?" dialog box. */ CMD_PREVENT_AUTOMATIC_RECONNECT : "528395", /** */ handleMessage : function( ) {}, /**Called by the bearer code when it has new LinkProperties data. */ sendLinkProperties : function( ) {}, /**Called by the bearer code when it has new NetworkInfo data. */ sendNetworkInfo : function( ) {}, /**Called by the bearer code when it has new NetworkCapabilities data. */ sendNetworkCapabilities : function( ) {}, /**Called by the bearer code when it has a new score for this network. */ sendNetworkScore : function( ) {}, /**Called by the VPN code when it wants to add ranges of UIDs to be routed through the VPN network. */ addUidRanges : function( ) {}, /**Called by the VPN code when it wants to remove ranges of UIDs from being routed through the VPN network. */ removeUidRanges : function( ) {}, /**Called by the bearer to indicate this network was manually selected by the user. This should be called before the NetworkInfo is marked CONNECTED so that this Network can be given special treatment at that time. If {@code acceptUnvalidated} is {@code true}, then the system will switch to this network. If it is {@code false} and the network cannot be validated, the system will ask the user whether to switch to this network. If the user confirms and selects "don't ask again", then the system will call {@link #saveAcceptUnvalidated} to persist the user's choice. Thus, if the transport ever calls this method with {@code acceptUnvalidated} set to {@code false}, it must also implement {@link #saveAcceptUnvalidated} to respect the user's choice. */ explicitlySelected : function( ) {}, };