flutter - 如何使用 flutter 获取 android/ios 设备的代理设置?

标签 flutter

我正在尝试使用 flutter 构建一个应用程序,我想知道如何通过 flutter 检索设备的代理设置。

最佳答案

假设 HttpClient 不会自动选择它可能是安全的,但您可能想要测试它。

因此,现在您需要使用 plugins 与 native 代码进行交互.已有富人library提供从电池电量到视频播放器的一切插件。我在任何地方都看不到代理,所以你需要编写自己的插件(这只是标准的 flutter 项目类型之一:应用程序、包(只允许 Dart 代码)和插件)。插件有点像包(其他项目可以依赖它)但也包含 native 代码。它还包括一个迷你应用程序,以便您可以在开发插件代码时对其进行测试。

您的插件最终会与现有的 Connectivity 插件类似,因此您可能需要从那里复制。在您的 Android 方法实现中,您将替换

NetworkInfo info = manager.getActiveNetworkInfo();

ProxyInfo defaultProxy = manager.getDefaultProxy();

你有两个返回值,主机名和端口,所以把它们放在一个 Map 中

Map<String, String> map = new HashMap<String, String>();
map.put("host", defaultProxy.getHost());
map.put("port", Integer.toString(defaultProxy.getPort()));
result.success(map);

如果您将更改提交到 Connectivity 插件,将获得奖励积分。

关于flutter - 如何使用 flutter 获取 android/ios 设备的代理设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50082372/

相关文章:

dart - Sembast 删除所有文件的最佳方法

flutter - 想在 flutter 中初始化 TimeZone 包,代码给出了这个错误

FLUTTER-WEB file.writeAsBytes 不起作用

Flutter:如何创建一个以 ListTile 作为子项的 DropdownMenuItem

android - 如何设置3 :4 Aspect Ratio Flutter camera preview

android-studio - 在 Android Studio 中为 Dart 启用 Rainbow Brackets

dart - 一个好的做法是将 Widgets 作为 flutter 中的类参数传递吗?

flutter - 如何仅在抽屉上应用模糊的BackdropFilter?

flutter - 如何向 Snackbar 添加边距或填充?

dart - Flutter 适用于 Android 和 iO 的不同主题