`
何先生
  • 浏览: 26441 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Android 获取ip地址

阅读更多
获取ip地址
1.使用WIFI
首先设置用户权限
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission
>
//获取wifi服务       
		WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
		//判断wifi是否开启      
		if (!wifiManager.isWifiEnabled()) {        
			wifiManager.setWifiEnabled(true);         
		}       
		WifiInfo wifiInfo = wifiManager.getConnectionInfo();            
		int ipAddress = wifiInfo.getIpAddress();         
		String ip = intToIp(ipAddress); 
		TextView tv=(TextView) findViewById(R.id.ip);
		tv.setText("本机ip:"+ip);

private String intToIp(int i) {                    
		return (i & 0xFF ) + "." +          
				((i >> 8 ) & 0xFF) + "." +           
				((i >> 16 ) & 0xFF) + "." +            
				( i >> 24 & 0xFF) ;   
	} 
2.使用GPRS
//首先,设置用户上网权限
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
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("WifiPreference IpAddress", ex.toString());        }      
		return null;
	}
分享到:
评论

相关推荐

    Android获取IP地址.txt

    以下是对“Android获取IP地址”这一主题的深入解析。 ### 知识点一:理解NetworkInterface `NetworkInterface`是Java标准库中的一个类,它表示系统中的网络接口,如以太网卡或Wi-Fi适配器。在Android设备上,`...

    android获取IP地址,运营商名称以及位置信息

    android获取IP地址,运营商名称以及位置信息,比较实用的小工具,可以用到代码中。 IP:是利用 jstun 包获取的。 ISP:是利用 sina webservice 获取的。 有错请指正。

    android获取ip地址和物理地址

    这是一个封装好的工具类,可以查看本机的ip地址和物理(mac)地址。没有wifi的情况下,也可以查看物理地址。

    android获取公网ip地址 IPUtil.java

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

    获取android设备的内网IP地址

    获取IP地址通常需要`ACCESS_NETWORK_STATE`和`INTERNET`权限。前者允许应用查询网络状态,后者则允许应用打开网络套接字。 2. **WiFiManager和ConnectivityManager**:这两个是Android提供的用于管理网络连接的重要...

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

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

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

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

    android 手机获取公网的IP地址

    网上找了下,好像这方面的代码比较少,而且大部分都不可用,所以自己写了一个小工具,可以获得外网的IP、城市等信息。... testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" }

    android手机获取上网的ip地址

    更常见的方式是遍历所有可用的网络接口(`NetworkInterface`)来查找连接到互联网的接口,然后从中获取IP地址。这通常涉及到`NetworkInterface.getNetworkInterfaces()`方法,以及`Enumeration&lt;InetAddress&gt;`接口的...

    Android获取Mac地址

    在Android系统中,获取设备的Mac地址是一项常见的需求,特别是在设备标识、网络连接管理和蓝牙通信等场景下。然而,由于隐私保护政策的变化,Android对于获取Mac地址的方式进行了限制,使得这个过程比以前复杂了一些...

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

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

    Android 获取IP地址的实现方法

    Android平台获取IP地址的方法主要分为两种:通过WIFI服务获取和通过遍历网络接口获取。WIFI方式适用于设备通过WIFI连接网络,而GPRS/3G方式适用于移动数据连接。在实际应用中,可能需要结合设备的网络状态来选择合适...

    Android开发准确获取手机IP地址的两种方式

    因此,在获取IP地址时,需要进行格式转换。 通过ConnectivityManager判断网络环境、getLocalIpAddress()获取本地IP地址和intToIp()获取WI-FI IP地址,这三种方式可以帮助我们准确获取手机IP地址,满足微信支付等...

    android jni获取 Mac地址

    本话题关注的是如何在JNI中获取Android设备的MAC地址。 MAC(Media Access Control)地址是网络设备的物理地址,每个设备在网络中都有一个唯一的MAC地址,用于数据传输中的寻址。在Android系统中,由于安全和隐私...

    Android获取IP的程序

    综上所述,这个“Android获取IP的程序”涵盖了Android网络编程中的多个重要知识点,包括权限管理、网络状态检查、IP地址获取等。开发者可以通过此程序学习如何在Android应用中实现类似功能,为用户提供更丰富的网络...

    android 获取手机ip地址

    因此,获取IP地址时,我们通常关注的是对外可用的那个IP,通常是Wi-Fi或移动数据连接的IPv4地址。 以下是获取手机IP地址的一种常见方法,利用Java的`java.net.NetworkInterface`和`java.net.InetAddress`类: ```...

    Android-wifi下获取ip地址

    在Android中,获取IP地址通常涉及以下几个关键步骤: 1. **权限声明**:在AndroidManifest.xml文件中,你需要添加`ACCESS_WIFI_STATE`权限,这样你的应用才能访问WiFi的状态信息: ```xml &lt;uses-permission ...

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

    ### 二、获取IP地址 IP地址用于在网络层标识设备,分为IPv4和IPv6两种类型。在Android中,可以遍历所有网络接口,从中筛选出非回环地址,从而获取到设备的真实IP地址。 #### 代码解析: ```java public static ...

    android_获取手机上网ip地址demo

    1. **检查网络状态**:在获取IP地址之前,需要确认设备已经连接到网络。可以使用`ConnectivityManager`来检查网络连接的状态。例如: ```java ConnectivityManager connectivityManager = (ConnectivityManager) ...

Global site tag (gtag.js) - Google Analytics