现在在做个客户端,目前状况就是:
1、连接着可以上ipv6的路由。
2、程序可查看本机ipv4和ipv6地址,可修改ipv4地址
3、需要的是修改ipv6地址。
网上查了很多,2中的可达到,但其实我是需要修改ipv6地址。
修改ipv4地址时:
WifiConfiguration wifiConf = null;
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo connectionInfo = wifiManager.getConnectionInfo();
List configuredNetworks = wifiManager.getConfiguredNetworks();
configuredNetworks对象中的linkproperties,有ipv4、网关、DNS,但就没有ipv6,请问我需要修改ipv6应该怎么弄?前提尽量就通过程序,而不是网上那些安各种东西的方法。
本人小白,望大神们可以说的细致一点,谢谢!
用jni吧 直接调用底层改
InterfaceConfiguration ifcg = null;
try {
ifcg = mNwService.getInterfaceConfig(intf);
if (ifcg != null) {
ifcg.setInterfaceUp();
/* IP/netmask: 192.168.43.1/255.255.255.0 */
ifcg.setLinkAddress(new LinkAddress(
NetworkUtils.numericToInetAddress("192.168.43.1"), 24));
mNwService.setInterfaceConfig(intf, ifcg);
/* IPV6 address */
ifcg.setLinkAddress(new LinkAddress(
NetworkUtils.hexToInet6Address("200147B30001000235db037c00a20001"), 64));
mNwService.setInterfaceConfig(intf, ifcg);
}
同求……目前都搜不到相关信息