outline_mobileproxy library

A Flutter plugin exposing the Outline Mobileproxy SDK (https://github.com/OutlineFoundation/outline-sdk/tree/main/x/mobileproxy) for Android and iOS.

The plugin runs a local HTTP CONNECT proxy backed by a Go Mobile dialer, which can forward traffic through a Shadowsocks server, a chain of transports (see the transport config format (https://pkg.go.dev/golang.getoutline.org/sdk/x/configurl#hdr-Config_Format)), or an automatically-selected "Smart Dialer" strategy. Point your app's networking library (e.g. HttpClient.findProxy, Dio, OkHttp, WKWebView) at the returned local address to route its traffic through the proxy.

Classes

OutlineMobileproxy
Entry point for starting and stopping a local Mobileproxy instance.
ProxyInfo
Information about a running local proxy started by OutlineMobileproxy.
SmartDialerConfig
Options controlling how the Smart Dialer probes candidate strategies.

Exceptions / Errors

InvalidConfigException
Thrown when the supplied transport configuration, or the Smart Dialer strategy configuration, could not be parsed or resolved into a working dialer.
OutlineMobileproxyException
Base class for exceptions thrown by OutlineMobileproxy.
OutlineMobileproxyPlatformException
Thrown for any other native-side failure that doesn't map to a more specific exception type.
ProxyStartException
Thrown when the local proxy could not be started, for example because the requested local address/port is already in use.
ProxyStateException
Thrown when an operation is requested that requires a running proxy (or requires no proxy to be running) and that precondition isn't met.
ProxyStopException
Thrown when the local proxy could not be stopped cleanly.