如何使用Java(以编程方式)在Android Wi-Fi连接上设置ProxySettings和ProxyProperties?
由于ipAssignment,linkProperties,ProxySettings和ProxyProperties是Android 3.1及更高版本WifiConfiguration中的隐藏字段,我需要能够枚举该类并使用这些字段.
使用下面的链接代码示例后,我可以为特定的Wi-Fi连接设置静态IP地址,网关和DNS,但我还需要设置Wificonfiguration.ProxySettings.STATIC和ProxyProperties
请参阅Stack Overflow问题如何在Android 3.x或4.x上以编程方式配置静态IP地址,网络掩码,网关.
例如,
WifiConfiguration config = new WifiConfiguration(configuration);
config.ipAssignment = WifiConfiguration.IpAssignment.UNASSIGNED;
config.proxySettings = WifiConfiguration.ProxySettings.STATIC;
config.linkProperties.setHttpProxy(new ProxyProperties("127.0.0.1", 3128, ""));
Run Code Online (Sandbox Code Playgroud)
寻找类似的东西:
setProxySettings("STATIC", wifiConf);
setProxyProperties("proxyserver.mine.com.au", 8080, ""); // Set Proxy server and port.
wifiManager.updateNetwork(wifiConf); //apply the setting
Run Code Online (Sandbox Code Playgroud)
使用coolypf中的以下代码.ipAssignment .ProxySettings和linkProperties被隐藏...
WifiManager manager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
manager.asyncConnect(this, new Handler());
if (!manager.isWifiEnabled()) return;
List<WifiConfiguration> configurationList = manager.getConfiguredNetworks();
WifiConfiguration configuration = null;
int cur = manager.getConnectionInfo().getNetworkId();
for (int i = 0; i < configurationList.size(); ++i)
{
WifiConfiguration wifiConfiguration = configurationList.get(i); …Run Code Online (Sandbox Code Playgroud)