android获取wifi的IP,子网掩码,网关,dns等信息

android获取wifi的IP,子网掩码,网关,dns等信息

分类:Android&专栏

public class MainActivity extends Activity {private WifiManager my_wifiManager;private WifiInfo wifiInfo;private DhcpInfo dhcpInfo;private TextView tvResult;@Overrideprotected 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);}@Overrideprotected 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 自定义progressDialog实现下一篇android中ping命令的实现

顶0踩0

因为在路上你就已经收获了自由自在的好心情。

android获取wifi的IP,子网掩码,网关,dns等信息

相关文章:

你感兴趣的文章:

标签云: