// Signature format: 2.0 package android.net { public final class IpSecAlgorithm implements android.os.Parcelable { ctor public IpSecAlgorithm(@NonNull String, @NonNull byte[]); ctor public IpSecAlgorithm(@NonNull String, @NonNull byte[], int); method public int describeContents(); method @NonNull public byte[] getKey(); method @NonNull public String getName(); method @NonNull public static java.util.Set getSupportedAlgorithms(); method public int getTruncationLengthBits(); method public void writeToParcel(android.os.Parcel, int); field public static final String AUTH_AES_CMAC = "cmac(aes)"; field public static final String AUTH_AES_XCBC = "xcbc(aes)"; field public static final String AUTH_CRYPT_AES_GCM = "rfc4106(gcm(aes))"; field public static final String AUTH_CRYPT_CHACHA20_POLY1305 = "rfc7539esp(chacha20,poly1305)"; field public static final String AUTH_HMAC_MD5 = "hmac(md5)"; field public static final String AUTH_HMAC_SHA1 = "hmac(sha1)"; field public static final String AUTH_HMAC_SHA256 = "hmac(sha256)"; field public static final String AUTH_HMAC_SHA384 = "hmac(sha384)"; field public static final String AUTH_HMAC_SHA512 = "hmac(sha512)"; field @NonNull public static final android.os.Parcelable.Creator CREATOR; field public static final String CRYPT_AES_CBC = "cbc(aes)"; field public static final String CRYPT_AES_CTR = "rfc3686(ctr(aes))"; } public final class IpSecManager { method @NonNull public android.net.IpSecManager.SecurityParameterIndex allocateSecurityParameterIndex(@NonNull java.net.InetAddress) throws android.net.IpSecManager.ResourceUnavailableException; method @NonNull public android.net.IpSecManager.SecurityParameterIndex allocateSecurityParameterIndex(@NonNull java.net.InetAddress, int) throws android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException; method public void applyTransportModeTransform(@NonNull java.net.Socket, int, @NonNull android.net.IpSecTransform) throws java.io.IOException; method public void applyTransportModeTransform(@NonNull java.net.DatagramSocket, int, @NonNull android.net.IpSecTransform) throws java.io.IOException; method public void applyTransportModeTransform(@NonNull java.io.FileDescriptor, int, @NonNull android.net.IpSecTransform) throws java.io.IOException; method @NonNull public android.net.IpSecManager.UdpEncapsulationSocket openUdpEncapsulationSocket(int) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException; method @NonNull public android.net.IpSecManager.UdpEncapsulationSocket openUdpEncapsulationSocket() throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException; method public void removeTransportModeTransforms(@NonNull java.net.Socket) throws java.io.IOException; method public void removeTransportModeTransforms(@NonNull java.net.DatagramSocket) throws java.io.IOException; method public void removeTransportModeTransforms(@NonNull java.io.FileDescriptor) throws java.io.IOException; field public static final int DIRECTION_IN = 0; // 0x0 field public static final int DIRECTION_OUT = 1; // 0x1 } public static final class IpSecManager.ResourceUnavailableException extends android.util.AndroidException { } public static final class IpSecManager.SecurityParameterIndex implements java.lang.AutoCloseable { method public void close(); method public int getSpi(); } public static final class IpSecManager.SpiUnavailableException extends android.util.AndroidException { method public int getSpi(); } public static final class IpSecManager.UdpEncapsulationSocket implements java.lang.AutoCloseable { method public void close() throws java.io.IOException; method public java.io.FileDescriptor getFileDescriptor(); method public int getPort(); } public final class IpSecTransform implements java.lang.AutoCloseable { method public void close(); } public static class IpSecTransform.Builder { ctor public IpSecTransform.Builder(@NonNull android.content.Context); method @NonNull public android.net.IpSecTransform buildTransportModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException; method @NonNull public android.net.IpSecTransform.Builder setAuthenticatedEncryption(@NonNull android.net.IpSecAlgorithm); method @NonNull public android.net.IpSecTransform.Builder setAuthentication(@NonNull android.net.IpSecAlgorithm); method @NonNull public android.net.IpSecTransform.Builder setEncryption(@NonNull android.net.IpSecAlgorithm); method @NonNull public android.net.IpSecTransform.Builder setIpv4Encapsulation(@NonNull android.net.IpSecManager.UdpEncapsulationSocket, int); } } package android.net.nsd { public final class NsdManager { method public void discoverServices(String, int, android.net.nsd.NsdManager.DiscoveryListener); method public void registerService(android.net.nsd.NsdServiceInfo, int, android.net.nsd.NsdManager.RegistrationListener); method public void resolveService(android.net.nsd.NsdServiceInfo, android.net.nsd.NsdManager.ResolveListener); method public void stopServiceDiscovery(android.net.nsd.NsdManager.DiscoveryListener); method public void unregisterService(android.net.nsd.NsdManager.RegistrationListener); field public static final String ACTION_NSD_STATE_CHANGED = "android.net.nsd.STATE_CHANGED"; field public static final String EXTRA_NSD_STATE = "nsd_state"; field public static final int FAILURE_ALREADY_ACTIVE = 3; // 0x3 field public static final int FAILURE_INTERNAL_ERROR = 0; // 0x0 field public static final int FAILURE_MAX_LIMIT = 4; // 0x4 field public static final int NSD_STATE_DISABLED = 1; // 0x1 field public static final int NSD_STATE_ENABLED = 2; // 0x2 field public static final int PROTOCOL_DNS_SD = 1; // 0x1 } public static interface NsdManager.DiscoveryListener { method public void onDiscoveryStarted(String); method public void onDiscoveryStopped(String); method public void onServiceFound(android.net.nsd.NsdServiceInfo); method public void onServiceLost(android.net.nsd.NsdServiceInfo); method public void onStartDiscoveryFailed(String, int); method public void onStopDiscoveryFailed(String, int); } public static interface NsdManager.RegistrationListener { method public void onRegistrationFailed(android.net.nsd.NsdServiceInfo, int); method public void onServiceRegistered(android.net.nsd.NsdServiceInfo); method public void onServiceUnregistered(android.net.nsd.NsdServiceInfo); method public void onUnregistrationFailed(android.net.nsd.NsdServiceInfo, int); } public static interface NsdManager.ResolveListener { method public void onResolveFailed(android.net.nsd.NsdServiceInfo, int); method public void onServiceResolved(android.net.nsd.NsdServiceInfo); } public final class NsdServiceInfo implements android.os.Parcelable { ctor public NsdServiceInfo(); method public int describeContents(); method public java.util.Map getAttributes(); method public java.net.InetAddress getHost(); method public int getPort(); method public String getServiceName(); method public String getServiceType(); method public void removeAttribute(String); method public void setAttribute(String, String); method public void setHost(java.net.InetAddress); method public void setPort(int); method public void setServiceName(String); method public void setServiceType(String); method public void writeToParcel(android.os.Parcel, int); field @NonNull public static final android.os.Parcelable.Creator CREATOR; } }