PlatformVpnProfile


public abstract class PlatformVpnProfile
extends Object

java.lang.Object
   ↳ android.net.PlatformVpnProfile


PlatformVpnProfile represents a configuration for a platform-based VPN implementation.

Platform-based VPNs allow VPN applications to provide configuration and authentication options to leverage the Android OS' implementations of well-defined control plane (authentication, key negotiation) and data plane (per-packet encryption) protocols to simplify the creation of VPN tunnels. In contrast, VpnService based VPNs must implement both the control and data planes on a per-app basis.

See also:

Summary

Constants

int TYPE_IKEV2_IPSEC_PSK

int TYPE_IKEV2_IPSEC_RSA

int TYPE_IKEV2_IPSEC_USER_PASS

Public methods

final boolean areLocalRoutesExcluded()

Returns whether the local traffic is exempted from the VPN.

final int getType()

Returns the profile integer type.

final String getTypeString()

Returns a type string describing the VPN profile type

final boolean isInternetValidationRequired()

Returns whether this VPN should undergo Internet validation.

Inherited methods

Constants

TYPE_IKEV2_IPSEC_PSK

Added in API level 30
public static final int TYPE_IKEV2_IPSEC_PSK

Constant Value: 7 (0x00000007)

TYPE_IKEV2_IPSEC_RSA

Added in API level 30
public static final int TYPE_IKEV2_IPSEC_RSA

Constant Value: 8 (0x00000008)

TYPE_IKEV2_IPSEC_USER_PASS

Added in API level 30
public static final int TYPE_IKEV2_IPSEC_USER_PASS

Constant Value: 6 (0x00000006)

Public methods

areLocalRoutesExcluded

Added in API level 33
public final boolean areLocalRoutesExcluded ()

Returns whether the local traffic is exempted from the VPN.

Returns
boolean

getType

Added in API level 30
public final int getType ()

Returns the profile integer type.

Returns
int Value is TYPE_IKEV2_IPSEC_USER_PASS, TYPE_IKEV2_IPSEC_PSK, or TYPE_IKEV2_IPSEC_RSA

getTypeString

Added in API level 30
public final String getTypeString ()

Returns a type string describing the VPN profile type

Returns
String This value cannot be null.

isInternetValidationRequired

Added in API level 33
public final boolean isInternetValidationRequired ()

Returns whether this VPN should undergo Internet validation. If this is true, the platform will perform basic validation checks for Internet connectivity over this VPN. If and when they succeed, the VPN network capabilities will reflect this by gaining the NetworkCapabilities#NET_CAPABILITY_VALIDATED capability. If this is false, the platform assumes the VPN either is always capable of reaching the Internet or intends not to. In this case, the VPN network capabilities will always gain the NetworkCapabilities#NET_CAPABILITY_VALIDATED capability immediately after it connects, whether it can reach public Internet destinations or not.

Returns
boolean