Skip to content

RandomModderJDK/native_flutter_proxy

 
 

Repository files navigation

Pub Version

native_flutter_proxy

A flutter plugin to read network proxy info from native. It can be used to set up the network proxy for flutter. The plugin provides classes to provide the HttpOverrides.global property with a proxy setting. This ensures that the gap of flutter in supporting proxy communication is filled by a convenient solution.

Installing

You should add the following to your pubspec.yaml file:

dependencies:
  native_flutter_proxy: latest

Example

  • Step 1: make your main()-method async
  • Step 2: add WidgetsFlutterBinding.ensureInitialized(); to your async-main()-method
  • Step 3: read the proxy settings from the wifi profile natively
  • Step 4: if enabled, override the proxy settings with the CustomProxy.
void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  bool enabled = false;
  String? host;
  int? port;
  try {
    ProxySetting settings = await NativeProxyReader.proxySetting;
    enabled = settings.enabled;
    host = settings.host;
    port = settings.port;
  } catch (e) {
    print(e);
  }
  if (enabled && host != null) {
    final proxy = CustomProxy(ipAddress: host, port: port);
    proxy.enable();
    print("proxy enabled");
  }

  runApp(MyApp());
}

Getting Started

This project is a starting point for a Flutter plug-in package, a specialized package that includes platform-specific implementation code for Android and/or iOS.

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

About

A plugin to get device proxy info.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 63.3%
  • Swift 12.2%
  • Ruby 10.7%
  • Kotlin 7.6%
  • Objective-C 6.2%