Ikev2VpnProfile

public final class Ikev2VpnProfile
extends PlatformVpnProfile

java.lang.Object
   ↳ android.net.PlatformVpnProfile
     ↳ android.net.Ikev2VpnProfile


The Ikev2VpnProfile is a configuration for the platform setup of IKEv2/IPsec VPNs.

Together with VpnManager, this allows apps to provision IKEv2/IPsec VPNs that do not require the VPN app to constantly run in the background.

Summary

Nested classes

class Ikev2VpnProfile.Builder

A incremental builder for IKEv2 VPN profiles 

Inherited constants

Public methods

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

List<String> getAllowedAlgorithms()

Returns all the algorithms allowed by this VPN profile.

IkeTunnelConnectionParams getIkeTunnelConnectionParams()

Retrieves the ikeTunnelConnectionParams contains IKEv2 configurations, if any was set.

int getMaxMtu()

Retrieves the maximum MTU set for this VPN profile.

String getPassword()

Retrieves the password.

byte[] getPresharedKey()

Retrieves the pre-shared key.

ProxyInfo getProxyInfo()

Retrieves the proxy information if any was set

PrivateKey getRsaPrivateKey()

Retrieves the RSA private key.

String getServerAddr()

Retrieves the server address string.

X509Certificate getServerRootCaCert()

Retrieves the certificate for the server's root CA.

X509Certificate getUserCert()

Retrieves the user certificate, if any was set.

String getUserIdentity()

Retrieves the user identity.

String getUsername()

Retrieves the username.

int hashCode()

Returns a hash code value for the object.

boolean isAutomaticIpVersionSelectionEnabled()

Returns whether automatic IP version selection is enabled.

boolean isAutomaticNattKeepaliveTimerEnabled()

Returns whether automatic NAT-T keepalive timers are enabled.

boolean isBypassable()

Returns whether or not the VPN profile should be bypassable.

boolean isMetered()

Returns whether or not the VPN profile should be always considered metered.

String toString()

Returns a string representation of the object.

Inherited methods

Public methods

equals

Added in API level 30
public boolean equals (Object obj)

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Parameters
obj Object: This value may be null.

Returns
boolean true if this object is the same as the obj argument; false otherwise.

getAllowedAlgorithms

Added in API level 30
public List<String> getAllowedAlgorithms ()

Returns all the algorithms allowed by this VPN profile.

May be an empty list if the profile is built from an IkeTunnelConnectionParams.

Returns
List<String> This value cannot be null.

getIkeTunnelConnectionParams

Added in API level 33
public IkeTunnelConnectionParams getIkeTunnelConnectionParams ()

Retrieves the ikeTunnelConnectionParams contains IKEv2 configurations, if any was set.

Returns
IkeTunnelConnectionParams This value may be null.

getMaxMtu

Added in API level 30
public int getMaxMtu ()

Retrieves the maximum MTU set for this VPN profile.

Returns
int

getPassword

Added in API level 30
public String getPassword ()

Retrieves the password.

May be null if the profile is not using Username/Password authentication, or the profile is built from an IkeTunnelConnectionParams.

Returns
String

getPresharedKey

Added in API level 30
public byte[] getPresharedKey ()

Retrieves the pre-shared key.

May be null if the profile is not using Pre-shared key authentication, or the profile is built from an IkeTunnelConnectionParams.

Returns
byte[]

getProxyInfo

Added in API level 30
public ProxyInfo getProxyInfo ()

Retrieves the proxy information if any was set

Returns
ProxyInfo This value may be null.

getRsaPrivateKey

Added in API level 30
public PrivateKey getRsaPrivateKey ()

Retrieves the RSA private key.

May be null if the profile is not using RSA Digital Signature authentication, or the profile is built from an IkeTunnelConnectionParams.

Returns
PrivateKey

getServerAddr

Added in API level 30
public String getServerAddr ()

Retrieves the server address string.

Returns
String This value cannot be null.

getServerRootCaCert

Added in API level 30
public X509Certificate getServerRootCaCert ()

Retrieves the certificate for the server's root CA.

May be null if the profile is not using RSA Digital Signature Authentication or Username/Password authentication, or the profile is built from an IkeTunnelConnectionParams.

Returns
X509Certificate

getUserCert

Added in API level 30
public X509Certificate getUserCert ()

Retrieves the user certificate, if any was set.

May be null if the profile is built from an IkeTunnelConnectionParams.

Returns
X509Certificate

getUserIdentity

Added in API level 30
public String getUserIdentity ()

Retrieves the user identity.

Returns
String This value cannot be null.

getUsername

Added in API level 30
public String getUsername ()

Retrieves the username.

May be null if the profile is not using Username/Password authentication, or the profile is built from an IkeTunnelConnectionParams.

Returns
String

hashCode

Added in API level 30
public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

Returns
int a hash code value for this object.

isAutomaticIpVersionSelectionEnabled

Added in API level 34
public boolean isAutomaticIpVersionSelectionEnabled ()

Returns whether automatic IP version selection is enabled.

Returns
boolean

isAutomaticNattKeepaliveTimerEnabled

Added in API level 34
public boolean isAutomaticNattKeepaliveTimerEnabled ()

Returns whether automatic NAT-T keepalive timers are enabled.

Returns
boolean

isBypassable

Added in API level 30
public boolean isBypassable ()

Returns whether or not the VPN profile should be bypassable.

Returns
boolean

isMetered

Added in API level 30
public boolean isMetered ()

Returns whether or not the VPN profile should be always considered metered.

Returns
boolean

toString

Added in API level 30
public String toString ()

Returns a string representation of the object.

Returns
String a string representation of the object.