码迷,mamicode.com
首页 > 移动开发 > 详细

android获取ip和本机的物理地址

时间:2014-12-21 15:20:00      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:获取ip   本机的物理地址   

<span style="font-size:18px;">/**
	 * 获取ip
	 * 
	 * @return
	 */
	public static String getLocalIPAddress() {
		try {
			for (Enumeration<NetworkInterface> en = NetworkInterface
					.getNetworkInterfaces(); en.hasMoreElements();) {

				NetworkInterface intf = en.nextElement();

				for (Enumeration<InetAddress> enumIpAddr = intf
						.getInetAddresses(); enumIpAddr.hasMoreElements();) {

					InetAddress inetAddress = enumIpAddr.nextElement();

					if (!inetAddress.isLoopbackAddress()
							&& inetAddress instanceof Inet4Address) {
						// return inetAddress.getAddress().toString();
						return inetAddress.getHostAddress().toString();
					}
				}
			}
		} catch (SocketException ex) {
			Log.e("BaseScanTvDeviceClient", "获取本机IP false =" + ex.toString());
		}

		return null;
	}

	public static String getLocalIPAddress(Context context) {
		WifiManager wifiManager = (WifiManager) context
				.getSystemService(Context.WIFI_SERVICE);
		WifiInfo wifiInfo = wifiManager.getConnectionInfo();
		String ipAddress = FormatIP(wifiInfo.getIpAddress());
		return ipAddress;
	}

	public static String FormatIP(int ip) {
		return Formatter.formatIpAddress(ip);
	}

	// /获取本机IP地址

	public static String getLocalIpAddress(Context ctx) {
		WifiManager wifiManager = (WifiManager) ctx
				.getSystemService(android.content.Context.WIFI_SERVICE);
		WifiInfo wifiInfo = wifiManager.getConnectionInfo();
		int ipAddress = wifiInfo.getIpAddress();
		try {
			return InetAddress.getByName(
					String.format("%d.%d.%d.%d", (ipAddress & 0xff),
							(ipAddress >> 8 & 0xff), (ipAddress >> 16 & 0xff),
							(ipAddress >> 24 & 0xff))).toString();
		} catch (UnknownHostException e) {
			return null;
		}

	}

	// 获取本机的物理地址
	public static String getLocalMacAddress(Context ctx) {
		WifiManager wifi = (WifiManager) ctx
				.getSystemService(Context.WIFI_SERVICE);
		WifiInfo info = wifi.getConnectionInfo();
		return info.getMacAddress();
	}</span>

android获取ip和本机的物理地址

标签:获取ip   本机的物理地址   

原文地址:http://blog.csdn.net/xiaoyi_tdcq/article/details/42060571

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!