`
berdy
  • 浏览: 513675 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Android中获取设备的IP

阅读更多
在wifi环境下,可以通过WifiInfo来获取设备的ip
	public String getIpAddress() {
		WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
		WifiInfo wifiInfo = wifiManager.getConnectionInfo();
		int ipAddress = wifiInfo.getIpAddress();
		int[] ipAddr = new int[4];
		ipAddr[0] = ipAddress & 0xFF;
		ipAddr[1] = (ipAddress >> 8) & 0xFF;
		ipAddr[2] = (ipAddress >> 16) & 0xFF;
		ipAddr[3] = (ipAddress >> 24) & 0xFF;
		return new StringBuilder().append(ipAddr[0]).append(".").append(ipAddr[1]).append(".").append(ipAddr[2])
				.append(".").append(ipAddr[3]).append(".").toString();

	}


执行上面的代码需要
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />


当然也可通过jdk总的NetworkInterface来获取的,就是遍历所有的网络接口,获取到非loopback ip
	public 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()) {
						return inetAddress.getHostAddress().toString();
					}
				}
			}
		} catch (SocketException ex) {
			Log.e("", ex.toString());
		}
		return null;
	}
0
0
分享到:
评论

相关推荐

    Android获取实时连接热点的设备IP

    Android获取实时连接热点的设备IP是指在Android系统中获取当前热点连接的设备IP地址的相关技术。主要涉及到Android系统中获取Wifi热点设备的Ip地址的代码实现。 知识点一:/proc/net/arp文件 在Android系统中,...

    获取android设备的内网IP地址

    通过这样的demo,开发者可以学习如何在Android环境中动态获取设备的网络IP地址,以便于实现各种网络功能,如设备定位、设备间的通信等。同时,这也提醒开发者注意网络权限的处理和网络操作的正确性,确保应用在网络...

    android DHCP获取IP失败分析解决.pdf

    然而,在某些情况下,Android 设备可能无法通过 DHCP 获取 IP 地址,导致连接 Wi-Fi 网络失败。本文将对 Android 中 DHCP 获取 IP 失败的原因和解决方法进行分析。 一、Android 中 DHCP 获取 IP 的流程 在 Android...

    android获取公网ip地址 IPUtil.java

    通过异步任务来获取当前用户的ip地址,使用的时候调用getRemoteIP方法就可以,需要传一个可以获取公网ip的url地址,这个百多很多,比如,搜狐,淘宝之类的都有,同时还有一个超时的任务,具体看代码了

    Android获取连接热点的设备信息ip、mac信息

    Android获取连接热点的设备信息ip、mac信息

    Android 极速获取局域网在线设备信息

    通常,我们使用ARP(Address Resolution Protocol)协议来获取设备的物理地址(MAC地址)对应于其IP地址。在Android中,我们可以使用`Socket`或`MulticastSocket`来发送ICMP请求,探测网络中其他设备的存在。然而,...

    Android获取IP的程序

    在Android平台上开发应用程序时,有时候我们需要获取设备的IP地址,例如为了实现网络通信、设备定位或是其他网络相关的功能。这个“Android获取IP的程序”就是一个简单的解决方案,它可以帮助开发者快速集成这一功能...

    Android UDP发送广播获取服务器IP

    本文将深入探讨如何在Android平台上利用UDP进行广播发送,以获取服务器的IP地址。 首先,我们需要了解UDP广播的工作原理。UDP广播是将数据包发送到特定的网络地址,即所有网络设备的广播地址,而不仅仅是一个单一的...

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

    以下将详细介绍如何在Android中获取这些关键的网络配置信息。 1. 获取IP地址: Android提供了一个名为`WifiManager`的系统服务,通过它我们可以获取到连接的WiFi网络的IP地址。首先,你需要在AndroidManifest.xml中...

    android 获取手机ip地址

    本文将详细讲解如何在Android中100%获取到本手机的IP地址,通过简单的代码实现。 首先,我们需要理解Android系统中网络接口的概念。Android设备可能有多个网络接口,如Wi-Fi、移动数据(3G/4G/LTE)等,每个接口都...

    android手机获取上网的ip地址

    总之,Android获取手机上网的IP地址是一个涉及网络编程和系统API交互的过程。通过合理的代码设计和网络接口遍历,我们可以准确地获取到设备的公网IP地址。同时,开发者需要注意适配不同的Android版本,以及处理可能...

    andriod获取局域网内的设备ip跟mac地址

    在Android中,可以使用`InetAddress`类来获取网络上的IP地址。以下是一个简单的示例,展示如何获取本机IP: ```java public String getLocalIpAddress() { try { for (Enumeration&lt;NetworkInterface&gt; en = ...

    Android获得设备状态信息、Mac地址、IP地址的方法

    运用反射获取Build信息,然后从build中得到对应字段的值。这种情况适用于获取所有的build信息。 或者直接调用Build类直接拿里面的字段名,如:android.os.Build.MODEL; // 手机型号 。这是为了获取单独某个手机...

    Android_获取手机IP和MAC地址

    以下是一段简单的代码示例,展示了如何获取设备的IPv4地址: ```java public String getLocalIpAddress() { try { for (Enumeration&lt;NetworkInterface&gt; en = NetworkInterface.getNetworkInterfaces(); en....

    获取android设备的IP和MAC

    在Android中,我们可以使用`ConnectivityManager`和`NetworkInterface`类来获取IP地址。以下是一个简单的示例代码片段: ```java ConnectivityManager connectivityManager = (ConnectivityManager) ...

    android_获取手机上网ip地址demo

    这个"android_获取手机上网ip地址demo"是一个示例项目,它演示了如何在Android设备上实现这一功能。下面我们将详细讲解这个过程以及相关知识点。 首先,我们需要了解Android系统的网络架构。Android系统基于Linux...

    Android获取手机ip地址及mac地址

    在Android中,可以通过`WifiManager`类来获取设备的MAC地址。 #### 代码解析: ```java static WifiManager wifiManager; static WifiInfo wifiInfo; public static String getMacAddress(Context context) { //...

    Android 判断网络是否可用 & 获取IP地址 & 获取以太网口MAC地址

    判断网络是否可用: 注意!是判断网络是否可用,但网络可用不代表一定能上外网的! public static boolean isNetworkAvailable(Context context) { ConnectivityManager manager = (ConnectivityManager) context...

    获取连接手机热点设备的IP地址

    在Android开发中,有时我们需要获取连接到手机热点设备的IP地址,这在设备间通信、网络诊断或构建本地网络服务时特别有用。本教程将详细解释如何实现这一功能,主要涉及"IP地址获取"和"手机AP"这两个关键知识点。 ...

    Android-wifi下获取ip地址

    在Android平台上,获取设备在WiFi网络下的IP地址是开发者经常需要处理的任务,这通常涉及到网络编程和设备网络状态的查询。下面将详细讲解如何在Android系统中获取WiFi连接的IP地址,以及相关的知识点。 首先,我们...

Global site tag (gtag.js) - Google Analytics