android获取wifi的IP,子网掩码,网关,dns等信息
2015-03-17 11:08
766 查看
public class MainActivity extends Activity { private WifiManager my_wifiManager; private WifiInfo wifiInfo; private DhcpInfo dhcpInfo; private TextView tvResult; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); my_wifiManager = ((WifiManager) getSystemService("wifi")); dhcpInfo = my_wifiManager.getDhcpInfo(); wifiInfo = my_wifiManager.getConnectionInfo(); tvResult = (TextView) findViewById(R.id.tvResult); } @Override protected void onResume() { super.onResume(); StringBuilder sb = new StringBuilder(); sb.append("网络信息:"); sb.append("\nipAddress:" + intToIp(dhcpInfo.ipAddress)); sb.append("\nnetmask:" + intToIp(dhcpInfo.netmask)); sb.append("\ngateway:" + intToIp(dhcpInfo.gateway)); sb.append("\nserverAddress:" + intToIp(dhcpInfo.serverAddress)); sb.append("\ndns1:" + intToIp(dhcpInfo.dns1)); sb.append("\ndns2:" + intToIp(dhcpInfo.dns2)); sb.append("\n"); System.out.println(intToIp(dhcpInfo.ipAddress)); System.out.println(intToIp(dhcpInfo.netmask)); System.out.println(intToIp(dhcpInfo.gateway)); System.out.println(intToIp(dhcpInfo.serverAddress)); System.out.println(intToIp(dhcpInfo.dns1)); System.out.println(intToIp(dhcpInfo.dns2)); System.out.println(dhcpInfo.leaseDuration); sb.append("Wifi信息:"); sb.append("\nIpAddress:" + intToIp(wifiInfo.getIpAddress())); sb.append("\nMacAddress:" + wifiInfo.getMacAddress()); tvResult.setText(sb.toString()); } private String intToIp(int paramInt) { return (paramInt & 0xFF) + "." + (0xFF & paramInt >> 8) + "." + (0xFF & paramInt >> 16) + "." + (0xFF & paramInt >> 24); } }
效果如下:
备注:
android.net.NetworkUtils
/** * Convert a IPv4 address from an integer to an InetAddress. * @param hostAddress an int corresponding to the IPv4 address in network byte order */ public static InetAddress intToInetAddress(int hostAddress) { byte[] addressBytes = { (byte)(0xff & hostAddress), (byte)(0xff & (hostAddress >> 8)), (byte)(0xff & (hostAddress >> 16)), (byte)(0xff & (hostAddress >> 24)) }; try { return InetAddress.getByAddress(addressBytes); } catch (UnknownHostException e) { throw new AssertionError(); } }
相关文章推荐
- android获取wifi的IP,子网掩码,网关,dns等信息
- android获取wifi的IP,子网掩码,网关,dns等信息
- WIFI项目--Android 获取本机IP(wifi下),子网掩码,网关,dns等信息
- 获取wifi的ip,子网掩码,网关,dns之类的信息
- 使用WMI控制网络适配器的类(获取所有启用的网络适配器及其信息。设置IP、子网掩码,网关,DNS)
- 获取当前可使用的网卡并检查网卡设置(网卡的IP,网关,子网掩码,DNS,备用DNS信息)
- 获取并修改本机的ip,网关,dns,子网掩码等信息
- c++获取本机网卡信息(IP,MAC,网关,子网掩码)
- C++实现获取IP、子网掩码、网关、DNS等本机网络参数的方法
- VC获取本机IP、子网掩码、网关、计算广播地址等信息代码(通过读注册表)
- c#获取本地连接的ip 子网掩码 网关 DNS
- Android获取WIFI网关地址与子网掩码地址
- (android)通过wifiManager获取关于wifi的ip,dns....
- csharp:获取 DNS、网关、子网掩码、IP
- C#设置网卡信息(IP,子网掩码,网关,DNS)
- Android获取WIFI网关地址与子网掩码地址
- Android在以太网下如果获取子网掩码、默认网关、DNS啊?
- VC获取本机IP、子网掩码、网关、计算广播地址等信息
- 用批处理来修改IP和DNS,网关等信息
- linux主机ip,网关,子网掩码,DNS配置