IT. Expert System.

Android Reference

ConnectivityManager


android.net

Class ConnectivityManager



  • public class ConnectivityManager
    extends Object
    Class that answers queries about the state of network connectivity. It also notifies applications when network connectivity changes. Get an instance of this class by calling Context.getSystemService(Context.CONNECTIVITY_SERVICE).

    The primary responsibilities of this class are to:

    1. Monitor network connections (Wi-Fi, GPRS, UMTS, etc.)
    2. Send broadcast intents when network connectivity changes
    3. Attempt to "fail over" to another network when connectivity to a network is lost
    4. Provide an API that allows applications to query the coarse-grained or fine-grained state of the available networks
    • Field Detail

      • CONNECTIVITY_ACTION

        public static final String CONNECTIVITY_ACTION
        A change in network connectivity has occurred. A connection has either been established or lost. The NetworkInfo for the affected network is sent as an extra; it should be consulted to see what kind of connectivity event occurred.

        If this is a connection that was the result of failing over from a disconnected network, then the FAILOVER_CONNECTION boolean extra is set to true.

        For a loss of connectivity, if the connectivity manager is attempting to connect (or has already connected) to another network, the NetworkInfo for the new network is also passed as an extra. This lets any receivers of the broadcast know that they should not necessarily tell the user that no data traffic will be possible. Instead, the reciever should expect another broadcast soon, indicating either that the failover attempt succeeded (and so there is still overall data connectivity), or that the failover attempt failed, meaning that all connectivity has been lost.

        For a disconnect event, the boolean extra EXTRA_NO_CONNECTIVITY is set to true if there are no connected networks at all.

        See Also:
        Constant Field Values
      • CONNECTIVITY_ACTION_IMMEDIATE

        public static final String CONNECTIVITY_ACTION_IMMEDIATE
        Identical to CONNECTIVITY_ACTION broadcast, but sent without any applicable Settings.Secure#CONNECTIVITY_CHANGE_DELAY.
        See Also:
        Constant Field Values
      • EXTRA_IS_FAILOVER

        public static final String EXTRA_IS_FAILOVER
        The lookup key for a boolean that indicates whether a connect event is for a network to which the connectivity manager was failing over following a disconnect on another network. Retrieve it with Intent.getBooleanExtra(String,boolean).
        See Also:
        Constant Field Values
      • EXTRA_REASON

        public static final String EXTRA_REASON
        The lookup key for a string that indicates why an attempt to connect to a network failed. The string has no particular structure. It is intended to be used in notifications presented to users. Retrieve it with Intent.getStringExtra(String).
        See Also:
        Constant Field Values
      • EXTRA_EXTRA_INFO

        public static final String EXTRA_EXTRA_INFO
        The lookup key for a string that provides optionally supplied extra information about the network state. The information may be passed up from the lower networking layers, and its meaning may be specific to a particular network type. Retrieve it with Intent.getStringExtra(String).
        See Also:
        Constant Field Values
      • EXTRA_INET_CONDITION

        public static final String EXTRA_INET_CONDITION
        The lookup key for an int that provides information about our connection to the internet at large. 0 indicates no connection, 100 indicates a great connection. Retrieve it with Intent.getIntExtra(String, int).
        See Also:
        Constant Field Values
      • ACTION_DATA_ACTIVITY_CHANGE

        public static final String ACTION_DATA_ACTIVITY_CHANGE
        Broadcast action to indicate the change of data activity status (idle or active) on a network in a recent period. The network becomes active when data transimission is started, or idle if there is no data transimition for a period of time.
        See Also:
        Constant Field Values
      • EXTRA_DEVICE_TYPE

        public static final String EXTRA_DEVICE_TYPE
        The lookup key for an enum that indicates the network device type on which this data activity change happens.
        See Also:
        Constant Field Values
      • EXTRA_IS_ACTIVE

        public static final String EXTRA_IS_ACTIVE
        The lookup key for a boolean that indicates the device is active or not. true means it is actively sending or receiving data and false means it is idle.
        See Also:
        Constant Field Values
      • ACTION_BACKGROUND_DATA_SETTING_CHANGED

        @Deprecated
        public static final String ACTION_BACKGROUND_DATA_SETTING_CHANGED
        Deprecated. As of Build.VERSION_CODES.ICE_CREAM_SANDWICH, availability of background data depends on several combined factors, and this broadcast is no longer sent. Instead, when background data is unavailable, getActiveNetworkInfo() will now appear disconnected. During first boot after a platform upgrade, this broadcast will be sent once if getBackgroundDataSetting() was false before the upgrade.
        Broadcast Action: The setting for background data usage has changed values. Use getBackgroundDataSetting() to get the current value.

        If an application uses the network in the background, it should listen for this broadcast and stop using the background data if the value is false.

        See Also:
        Constant Field Values
      • INET_CONDITION_ACTION

        public static final String INET_CONDITION_ACTION
        Broadcast Action: The network connection may not be good uses ConnectivityManager.EXTRA_INET_CONDITION and ConnectivityManager.EXTRA_NETWORK_INFO to specify the network and it's condition.
        See Also:
        Constant Field Values
      • ACTION_TETHER_STATE_CHANGED

        public static final String ACTION_TETHER_STATE_CHANGED
        Broadcast Action: A tetherable connection has come or gone TODO - finish the doc
        See Also:
        Constant Field Values
      • TYPE_MOBILE

        public static final int TYPE_MOBILE
        The Default Mobile data connection. When active, all data traffic will use this connection by default.
        See Also:
        Constant Field Values
      • TYPE_WIFI

        public static final int TYPE_WIFI
        The Default WIFI data connection. When active, all data traffic will use this connection by default.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_MMS

        public static final int TYPE_MOBILE_MMS
        An MMS-specific Mobile data connection. This connection may be the same as TYPE_MOBILE but it may be different. This is used by applications needing to talk to the carrier's Multimedia Messaging Service servers. It may coexist with default data connections.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_SUPL

        public static final int TYPE_MOBILE_SUPL
        A SUPL-specific Mobile data connection. This connection may be the same as TYPE_MOBILE but it may be different. This is used by applications needing to talk to the carrier's Secure User Plane Location servers for help locating the device. It may coexist with default data connections.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_DUN

        public static final int TYPE_MOBILE_DUN
        A DUN-specific Mobile data connection. This connection may be the same as TYPE_MOBILE but it may be different. This is used by applicaitons performing a Dial Up Networking bridge so that the carrier is aware of DUN traffic. It may coexist with default data connections.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_HIPRI

        public static final int TYPE_MOBILE_HIPRI
        A High Priority Mobile data connection. This connection is typically the same as TYPE_MOBILE but the routing setup is different. Only requesting processes will have access to the Mobile DNS servers and only IP's explicitly requested via requestRouteToHost(int, int) will route over this interface if a default route exists.
        See Also:
        Constant Field Values
      • TYPE_WIMAX

        public static final int TYPE_WIMAX
        The Default WiMAX data connection. When active, all data traffic will use this connection by default.
        See Also:
        Constant Field Values
      • TYPE_BLUETOOTH

        public static final int TYPE_BLUETOOTH
        The Default Bluetooth data connection. When active, all data traffic will use this connection by default.
        See Also:
        Constant Field Values
      • TYPE_DUMMY

        public static final int TYPE_DUMMY
        Dummy data connection. This should not be used on shipping devices.
        See Also:
        Constant Field Values
      • TYPE_ETHERNET

        public static final int TYPE_ETHERNET
        The Default Ethernet data connection. When active, all data traffic will use this connection by default.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_FOTA

        public static final int TYPE_MOBILE_FOTA
        Over the air Adminstration.
        See Also:
        Constant Field Values
      • TYPE_MOBILE_IMS

        public static final int TYPE_MOBILE_IMS
        IP Multimedia Subsystem
        See Also:
        Constant Field Values
      • TYPE_MOBILE_CBS

        public static final int TYPE_MOBILE_CBS
        Carrier Branded Services
        See Also:
        Constant Field Values
      • TYPE_WIFI_P2P

        public static final int TYPE_WIFI_P2P
        A Wi-Fi p2p connection. Only requesting processes will have access to the peers connected.
        See Also:
        Constant Field Values
      • DEFAULT_NETWORK_PREFERENCE

        public static final int DEFAULT_NETWORK_PREFERENCE
        See Also:
        Constant Field Values
      • CONNECTIVITY_CHANGE_DELAY_DEFAULT

        public static final int CONNECTIVITY_CHANGE_DELAY_DEFAULT
        Default value for Settings.Global#CONNECTIVITY_CHANGE_DELAY in milliseconds.
        See Also:
        Constant Field Values
      • TETHER_ERROR_UNKNOWN_IFACE

        public static final int TETHER_ERROR_UNKNOWN_IFACE
        See Also:
        Constant Field Values
      • TETHER_ERROR_SERVICE_UNAVAIL

        public static final int TETHER_ERROR_SERVICE_UNAVAIL
        See Also:
        Constant Field Values
      • TETHER_ERROR_UNSUPPORTED

        public static final int TETHER_ERROR_UNSUPPORTED
        See Also:
        Constant Field Values
      • TETHER_ERROR_UNAVAIL_IFACE

        public static final int TETHER_ERROR_UNAVAIL_IFACE
        See Also:
        Constant Field Values
      • TETHER_ERROR_MASTER_ERROR

        public static final int TETHER_ERROR_MASTER_ERROR
        See Also:
        Constant Field Values
      • TETHER_ERROR_TETHER_IFACE_ERROR

        public static final int TETHER_ERROR_TETHER_IFACE_ERROR
        See Also:
        Constant Field Values
      • TETHER_ERROR_UNTETHER_IFACE_ERROR

        public static final int TETHER_ERROR_UNTETHER_IFACE_ERROR
        See Also:
        Constant Field Values
      • TETHER_ERROR_ENABLE_NAT_ERROR

        public static final int TETHER_ERROR_ENABLE_NAT_ERROR
        See Also:
        Constant Field Values
      • TETHER_ERROR_DISABLE_NAT_ERROR

        public static final int TETHER_ERROR_DISABLE_NAT_ERROR
        See Also:
        Constant Field Values
      • TETHER_ERROR_IFACE_CFG_ERROR

        public static final int TETHER_ERROR_IFACE_CFG_ERROR
        See Also:
        Constant Field Values
    • Constructor Detail

      • ConnectivityManager

        public ConnectivityManager(IConnectivityManager service)
    • Method Detail

      • isNetworkTypeValid

        public static boolean isNetworkTypeValid(int networkType)
      • getNetworkTypeName

        public static String getNetworkTypeName(int type)
      • isNetworkTypeMobile

        public static boolean isNetworkTypeMobile(int networkType)
      • setNetworkPreference

        public void setNetworkPreference(int preference)
      • getNetworkPreference

        public int getNetworkPreference()
      • getActiveNetworkInfo

        public NetworkInfo getActiveNetworkInfo()
        Returns details about the currently active data network. When connected, this network is the default route for outgoing connections. You should always check NetworkInfo.isConnected() before initiating network traffic. This may return null when no networks are available.

        This method requires the caller to hold the permission android.Manifest.permission#ACCESS_NETWORK_STATE.

      • getActiveNetworkInfoForUid

        public NetworkInfo getActiveNetworkInfoForUid(int uid)
      • getNetworkInfo

        public NetworkInfo getNetworkInfo(int networkType)
      • getAllNetworkInfo

        public NetworkInfo[] getAllNetworkInfo()
      • getActiveLinkProperties

        public LinkProperties getActiveLinkProperties()
      • getLinkProperties

        public LinkProperties getLinkProperties(int networkType)
      • setRadios

        public boolean setRadios(boolean turnOn)
      • setRadio

        public boolean setRadio(int networkType,
                       boolean turnOn)
      • startUsingNetworkFeature

        public int startUsingNetworkFeature(int networkType,
                                   String feature)
        Tells the underlying networking system that the caller wants to begin using the named feature. The interpretation of feature is completely up to each networking implementation.

        This method requires the caller to hold the permission android.Manifest.permission#CHANGE_NETWORK_STATE.

        Parameters:
        networkType - specifies which network the request pertains to
        feature - the name of the feature to be used
        Returns:
        an integer value representing the outcome of the request. The interpretation of this value is specific to each networking implementation+feature combination, except that the value -1 always indicates failure.
      • stopUsingNetworkFeature

        public int stopUsingNetworkFeature(int networkType,
                                  String feature)
        Tells the underlying networking system that the caller is finished using the named feature. The interpretation of feature is completely up to each networking implementation.

        This method requires the caller to hold the permission android.Manifest.permission#CHANGE_NETWORK_STATE.

        Parameters:
        networkType - specifies which network the request pertains to
        feature - the name of the feature that is no longer needed
        Returns:
        an integer value representing the outcome of the request. The interpretation of this value is specific to each networking implementation+feature combination, except that the value -1 always indicates failure.
      • requestRouteToHost

        public boolean requestRouteToHost(int networkType,
                                 int hostAddress)
        Ensure that a network route exists to deliver traffic to the specified host via the specified network interface. An attempt to add a route that already exists is ignored, but treated as successful.

        This method requires the caller to hold the permission android.Manifest.permission#CHANGE_NETWORK_STATE.

        Parameters:
        networkType - the type of the network over which traffic to the specified host is to be routed
        hostAddress - the IP address of the host to which the route is desired
        Returns:
        true on success, false on failure
      • requestRouteToHostAddress

        public boolean requestRouteToHostAddress(int networkType,
                                        InetAddress hostAddress)
        Ensure that a network route exists to deliver traffic to the specified host via the specified network interface. An attempt to add a route that already exists is ignored, but treated as successful.
        Parameters:
        networkType - the type of the network over which traffic to the specified host is to be routed
        hostAddress - the IP address of the host to which the route is desired
        Returns:
        true on success, false on failure
      • getBackgroundDataSetting

        @Deprecated
        public boolean getBackgroundDataSetting()
        Deprecated. As of Build.VERSION_CODES.ICE_CREAM_SANDWICH, availability of background data depends on several combined factors, and this method will always return true. Instead, when background data is unavailable, getActiveNetworkInfo() will now appear disconnected.
        Returns the value of the setting for background data usage. If false, applications should not use the network if the application is not in the foreground. Developers should respect this setting, and check the value of this before performing any background data operations.

        All applications that have background services that use the network should listen to ACTION_BACKGROUND_DATA_SETTING_CHANGED.

        Returns:
        Whether background data usage is allowed.
      • setBackgroundDataSetting

        @Deprecated
        public void setBackgroundDataSetting(boolean allowBackgroundData)
        Deprecated.
        Sets the value of the setting for background data usage.
        Parameters:
        allowBackgroundData - Whether an application should use data while it is in the background.
        See Also:
        getBackgroundDataSetting()
      • getActiveNetworkQuotaInfo

        public NetworkQuotaInfo getActiveNetworkQuotaInfo()
        Return quota status for the current active network, or null if no network is active. Quota status can change rapidly, so these values shouldn't be cached.
      • getMobileDataEnabled

        public boolean getMobileDataEnabled()
        Gets the value of the setting for enabling Mobile data.
        Returns:
        Whether mobile data is enabled.
      • setMobileDataEnabled

        public void setMobileDataEnabled(boolean enabled)
        Sets the persisted value for enabling/disabling Mobile data.
        Parameters:
        enabled - Whether the mobile data connection should be used or not.
      • getTetherableIfaces

        public String[] getTetherableIfaces()
      • getTetheredIfaces

        public String[] getTetheredIfaces()
      • getTetheringErroredIfaces

        public String[] getTetheringErroredIfaces()
      • tether

        public int tether(String iface)
        Returns:
        error A TETHER_ERROR value indicating success or failure type
      • untether

        public int untether(String iface)
        Returns:
        error A TETHER_ERROR value indicating success or failure type
      • isTetheringSupported

        public boolean isTetheringSupported()
      • getTetherableUsbRegexs

        public String[] getTetherableUsbRegexs()
      • getTetherableWifiRegexs

        public String[] getTetherableWifiRegexs()
      • getTetherableBluetoothRegexs

        public String[] getTetherableBluetoothRegexs()
      • setUsbTethering

        public int setUsbTethering(boolean enable)
      • getLastTetherError

        public int getLastTetherError(String iface)
        Parameters:
        iface - The name of the interface we're interested in
        Returns:
        error The error code of the last error tethering or untethering the named interface
      • requestNetworkTransitionWakelock

        public boolean requestNetworkTransitionWakelock(String forWhom)
        Ensure the device stays awake until we connect with the next network
        Parameters:
        forWhome - The name of the network going down for logging purposes
        Returns:
        true on success, false on failure
      • reportInetCondition

        public void reportInetCondition(int networkType,
                               int percentage)
        Parameters:
        networkType - The type of network you want to report on
        percentage - The quality of the connection 0 is bad, 100 is good
      • setGlobalProxy

        public void setGlobalProxy(ProxyProperties p)
        Parameters:
        proxyProperties - The definition for the new global http proxy
      • getGlobalProxy

        public ProxyProperties getGlobalProxy()
        Returns:
        proxyProperties for the current global proxy
      • getProxy

        public ProxyProperties getProxy()
        Returns:
        proxyProperties for the current proxy (global if set, network specific if not)
      • setDataDependency

        public void setDataDependency(int networkType,
                             boolean met)
        Parameters:
        networkType - The network who's dependence has changed
        met - Boolean - true if network use is ok, false if not
      • isNetworkSupported

        public boolean isNetworkSupported(int networkType)
        Returns true if the hardware supports the given network type else it returns false. This doesn't indicate we have coverage or are authorized onto a network, just whether or not the hardware supports it. For example a gsm phone without a sim should still return true for mobile data, but a wifi only tablet would return false.
        Parameters:
        networkType - The nework type we'd like to check
        Returns:
        true if supported, else false
      • isActiveNetworkMetered

        public boolean isActiveNetworkMetered()
        Returns if the currently active data network is metered. A network is classified as metered when the user is sensitive to heavy data usage on that connection. You should check this before doing large data transfers, and warn the user or delay the operation until another network is available.
      • updateLockdownVpn

        public boolean updateLockdownVpn()
      • captivePortalCheckComplete

        public void captivePortalCheckComplete(NetworkInfo info)


Content

Android Reference

Java basics

Java Enterprise Edition (EE)

Java Standard Edition (SE)

SQL

HTML

PHP

CSS

Java Script

MYSQL

JQUERY

VBS

REGEX

C

C++

C#

Design patterns

RFC (standard status)

RFC (proposed standard status)

RFC (draft standard status)

RFC (informational status)

RFC (experimental status)

RFC (best current practice status)

RFC (historic status)

RFC (unknown status)

IT dictionary

License.
All information of this service is derived from the free sources and is provided solely in the form of quotations. This service provides information and interfaces solely for the familiarization (not ownership) and under the "as is" condition.
Copyright 2016 © ELTASK.COM. All rights reserved.
Site is optimized for mobile devices.
Downloads: 453 / 158726504. Delta: 0.05370 с