java.lang.Object | |
↳ | android.net.NetworkCapabilities |
This class represents the capabilities of a network. This is used both to specify
needs to ConnectivityManager
and when inspecting a network.
Note that this replaces the old TYPE_MOBILE
method
of network selection. Rather than indicate a need for Wi-Fi because an application
needs high bandwidth and risk obselence when a new, fast network appears (like LTE),
the application should specify it needs high bandwidth. Similarly if an application
needs an unmetered network for a bulk transfer it can specify that rather than assuming
all cellular based connections are metered and all Wi-Fi based connections are not.
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | NET_CAPABILITY_CBS | Indicates this is a network that has the ability to reach the carrier's CBS servers, used for carrier specific services. | |||||||||
int | NET_CAPABILITY_DUN | Indicates this is a network that has the ability to reach the carrier's DUN or tethering gateway. | |||||||||
int | NET_CAPABILITY_EIMS | Indicates this is a network that has the ability to reach a carrier's Emergency IMS servers, used for network signaling during emergency calls. | |||||||||
int | NET_CAPABILITY_FOTA | Indicates this is a network that has the ability to reach the carrier's FOTA portal, used for over the air updates. | |||||||||
int | NET_CAPABILITY_IA | Indicates this is a network that has the ability to reach a carrier's Initial Attach servers. | |||||||||
int | NET_CAPABILITY_IMS | Indicates this is a network that has the ability to reach the carrier's IMS servers, used for network registration and signaling. | |||||||||
int | NET_CAPABILITY_INTERNET | Indicates that this network should be able to reach the internet. | |||||||||
int | NET_CAPABILITY_MMS | Indicates this is a network that has the ability to reach the carrier's MMSC for sending and receiving MMS messages. | |||||||||
int | NET_CAPABILITY_NOT_METERED | Indicates that this network is unmetered. | |||||||||
int | NET_CAPABILITY_NOT_RESTRICTED | Indicates that this network is available for general use. | |||||||||
int | NET_CAPABILITY_NOT_VPN | ||||||||||
int | NET_CAPABILITY_RCS | Indicates this is a network that has the ability to reach a carrier's RCS servers, used for Rich Communication Services. | |||||||||
int | NET_CAPABILITY_SUPL | Indicates this is a network that has the ability to reach the carrier's SUPL server, used to retrieve GPS information. | |||||||||
int | NET_CAPABILITY_TRUSTED | Indicates that the user has indicated implicit trust of this network. | |||||||||
int | NET_CAPABILITY_WIFI_P2P | Indicates this is a network that has the ability to reach a Wi-Fi direct peer. | |||||||||
int | NET_CAPABILITY_XCAP | Indicates this is a network that has the ability to reach a carrier's XCAP servers, used for configuration and control. | |||||||||
int | TRANSPORT_BLUETOOTH | Indicates this network uses a Bluetooth transport. | |||||||||
int | TRANSPORT_CELLULAR | Indicates this network uses a Cellular transport. | |||||||||
int | TRANSPORT_ETHERNET | Indicates this network uses an Ethernet transport. | |||||||||
int | TRANSPORT_VPN | Indicates this network uses a VPN transport. | |||||||||
int | TRANSPORT_WIFI | Indicates this network uses a Wi-Fi transport. |
[Expand]
Inherited Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From interface
android.os.Parcelable
|
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
CREATOR |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Describe the kinds of special objects contained in this Parcelable's
marshalled representation.
| |||||||||||
Compares this instance with the specified object and indicates if they
are equal.
| |||||||||||
Retrieves the downstream bandwidth for this network in Kbps.
| |||||||||||
Retrieves the upstream bandwidth for this network in Kbps.
| |||||||||||
Tests for the presence of a capabilitity on this instance.
| |||||||||||
Tests for the presence of a transport on this instance.
| |||||||||||
Returns an integer hash code for this object.
| |||||||||||
Returns a string containing a concise, human-readable description of this
object.
| |||||||||||
Flatten this object in to a Parcel.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
android.os.Parcelable
|
Indicates this is a network that has the ability to reach the carrier's CBS servers, used for carrier specific services.
Indicates this is a network that has the ability to reach the carrier's DUN or tethering gateway.
Indicates this is a network that has the ability to reach a carrier's Emergency IMS servers, used for network signaling during emergency calls.
Indicates this is a network that has the ability to reach the carrier's FOTA portal, used for over the air updates.
Indicates this is a network that has the ability to reach a carrier's Initial Attach servers.
Indicates this is a network that has the ability to reach the carrier's IMS servers, used for network registration and signaling.
Indicates that this network should be able to reach the internet.
Indicates this is a network that has the ability to reach the carrier's MMSC for sending and receiving MMS messages.
Indicates that this network is unmetered.
Indicates that this network is available for general use. If this is not set applications should not attempt to communicate on this network. Note that this is simply informative and not enforcement - enforcement is handled via other means. Set by default.
Indicates this is a network that has the ability to reach a carrier's RCS servers, used for Rich Communication Services.
Indicates this is a network that has the ability to reach the carrier's SUPL server, used to retrieve GPS information.
Indicates that the user has indicated implicit trust of this network. This generally means it's a sim-selected carrier, a plugged in ethernet, a paired BT device or a wifi the user asked to connect to. Untrusted networks are probably limited to unknown wifi AP. Set by default.
Indicates this is a network that has the ability to reach a Wi-Fi direct peer.
Indicates this is a network that has the ability to reach a carrier's XCAP servers, used for configuration and control.
Indicates this network uses a Bluetooth transport.
Indicates this network uses a Cellular transport.
Indicates this network uses an Ethernet transport.
Indicates this network uses a VPN transport.
Indicates this network uses a Wi-Fi transport.
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
Compares this instance with the specified object and indicates if they
are equal. In order to be equal, o
must represent the same object
as this instance using a class-specific comparison. The general contract
is that this comparison should be reflexive, symmetric, and transitive.
Also, no object reference other than null is equal to null.
The default implementation returns true
only if this ==
o
. See Writing a correct
equals
method
if you intend implementing your own equals
method.
The general contract for the equals
and hashCode()
methods is that if equals
returns true
for
any two objects, then hashCode()
must return the same value for
these objects. This means that subclasses of Object
usually
override either both methods or neither of them.
obj | the object to compare this instance with. |
---|
true
if the specified object is equal to this Object
; false
otherwise.Retrieves the downstream bandwidth for this network in Kbps. This always only refers to the estimated first hop transport bandwidth.
Retrieves the upstream bandwidth for this network in Kbps. This always only refers to the estimated first hop transport bandwidth.
Tests for the presence of a capabilitity on this instance.
capability | the NetworkCapabilities.NET_CAPABILITY_* to be tested for. |
---|
true
if set on this instance.
Tests for the presence of a transport on this instance.
transportType | the NetworkCapabilities.TRANSPORT_* to be tested for. |
---|
true
if set on this instance.
Returns an integer hash code for this object. By contract, any two
objects for which equals(Object)
returns true
must return
the same hash code value. This means that subclasses of Object
usually override both methods or neither method.
Note that hash values must not change over time unless information used in equals comparisons also changes.
See Writing a correct
hashCode
method
if you intend implementing your own hashCode
method.
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
See Writing a useful
toString
method
if you intend implementing your own toString
method.
Flatten this object in to a Parcel.
dest | The Parcel in which the object should be written. |
---|---|
flags | Additional flags about how the object should be written.
May be 0 or PARCELABLE_WRITE_RETURN_VALUE .
|