Proxy
public
final
class
Proxy
extends Object
| java.lang.Object | |
| ↳ | android.net.http.Proxy |
Represents a proxy that can be used by HttpEngine.
How HTTP requests are sent via proxies depends on a variety of factors. For example: the type of proxy being used, the HTTP version being used, whether the request is being sent to a destination with an http or https URI scheme. Additionally, whether a tunnel through the proxy is established, or not, also depends on these factors.
Summary
Nested classes | |
|---|---|
interface |
Proxy.HttpConnectCallback
Controls tunnels established via HTTP CONNECT. |
Constants | |
|---|---|
int |
SCHEME_HTTP
Establish a plaintext connection to the proxy itself. |
int |
SCHEME_HTTPS
Establish a secure connection to the proxy itself. |
Public methods | |
|---|---|
static
Proxy
|
createHttpProxy(int scheme, String host, int port, Executor executor, Proxy.HttpConnectCallback callback)
Constructs an HTTP proxy. |
Inherited methods | |
|---|---|
Constants
SCHEME_HTTP
public static final int SCHEME_HTTP
Establish a plaintext connection to the proxy itself.
Constant Value: 0 (0x00000000)
SCHEME_HTTPS
public static final int SCHEME_HTTPS
Establish a secure connection to the proxy itself.
Constant Value: 1 (0x00000001)
Public methods
createHttpProxy
public static Proxy createHttpProxy (int scheme, String host, int port, Executor executor, Proxy.HttpConnectCallback callback)
Constructs an HTTP proxy.
When sending HTTP requests via an HTTP proxy, whether callback is called, or not,
depends on the URI scheme of the destination:
- For destinations with an https URI scheme, HttpEngine establishes a tunnel through the proxy. The tunnel is established via an HTTP CONNECT request. In this case {code callback} will be called to control the HTTP CONNECT request used to establish the tunnel.
- For destinations with an http URI scheme, HttpEngine sends an HTTP request, containing
the entire URI of the destination, to the proxy. In this case
callbackwill not be called.
| Parameters | |
|---|---|
scheme |
int: ERROR(Scheme/android.net.http.Proxy.Scheme Scheme) that, alongside host and port, identifies this
proxy.
Value is one of the following: |
host |
String: Non-empty host that, alongside scheme and port, identifies this
proxy.
This value cannot be null. |
port |
int: Port that, alongside scheme and host, identifies this proxy. Its
value must be within [0, 65535].
Value is between 0 and 65535 inclusive |
executor |
Executor: Executor where callback will be invoked.
This value cannot be null. |
callback |
Proxy.HttpConnectCallback: Callback that allows interacting with the HTTP CONNECT request, and its
response, that HttpEngine sends to establish tunnels through the proxy.
This value cannot be null. |
| Returns | |
|---|---|
Proxy |
This value cannot be null. |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2026-02-26 UTC.