您当前的位置:首页 > 计算机 > 编程开发 > 安卓(android)开发

Android获取本地IP

时间:02-05来源:作者:点击数:

可以通过网络接口获取,遍历所有的网络接口,但是有时可能会存在多个ip,那真正连网时使用的ip时哪一个的呢?可能不太好判断。可以通过另一种方式,使用Socket建立连接来获取正在使用的本地ip,代码如下:

private String getLocalIp() {
	Socket socket = null;
	try {
		// 这里也可以使用ip,比如使用自己公司服务器的ip和端口
		socket = new java.net.Socket("baidu.com", 80);
		return socket.getLocalAddress().getHostAddress();
	} catch (Exception e) {
		Timber.Companion.fw(e, "尝试激活网络失败,无法连接到:" + host + ":" + port);
	} finally {
		IOUtil.closeIO(socket);
	}
	return null;
}

另外:

  • socket.getLocalPort() 获取本地使用的网络端口
  • socket.getInetAddress().getHostAddress() 获取远程连接的ip,如使用域名连接,可以获取到域名对应的ip
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门