我正在尝试使用flutter构建应用程序,我想知道如何通过flutter检索设备的代理设置。
答案 0 :(得分:3)
可以安全地假设HttpClient没有自动选择它,但您可能想要测试它。
因此,现在您需要使用plugins与本机代码进行交互。已经有丰富的library插件提供从电池级到视频播放器的所有功能。我无法在任何地方看到代理,因此您需要编写自己的插件(这只是标准的flutter项目类型之一:app,package(只允许使用Dart代码)和插件)。插件有点像包(其他项目可以依赖它),但也包含本机代码。它还包括一个迷你应用程序,以便您可以在开发时测试插件代码。
您的插件最终会与现有的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插件,则会获得积分。