java 获取ip地址

1.使用WIFI

首先设置用户权限

Xml代码

  1. <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
  2. <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
  3. <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>

其次,代码如下

Java代码

  1. public void onCreate(Bundle savedInstanceState) {
  2. super.onCreate(savedInstanceState);
  3. setContentView(R.layout.main);
  4. //获取wifi服务
  5. WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
  6. //判断wifi是否开启
  7. if (!wifiManager.isWifiEnabled()) {
  8. wifiManager.setWifiEnabled(true);
  9. }
  10. WifiInfo wifiInfo = wifiManager.getConnectionInfo();
  11. int ipAddress = wifiInfo.getIpAddress();
  12. String ip = intToIp(ipAddress);
  13. EditText et = (EditText)findViewById(R.id.EditText01);
  14. et.setText(ip);
  15. }
  16. private String intToIp(int i) {
  17. return (i & 0xFF ) + "." +
  18. ((i >> 8 ) & 0xFF) + "." +
  19. ((i >> 16 ) & 0xFF) + "." +
  20. ( i >> 24 & 0xFF) ;
  21. }

2.使用GPRS

首先,设置用户上网权限

Xml代码

  1. <uses-permission android:name="android.permission.INTERNET"></uses-permission>

其次,代码如下

Java代码

  1. public String getLocalIpAddress()
  2. {
  3. try
  4. {
  5. for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();)
  6. {
  7. NetworkInterface intf = en.nextElement();
  8. for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();)
  9. {
  10. InetAddress inetAddress = enumIpAddr.nextElement();
  11. if (!inetAddress.isLoopbackAddress())
  12. {
  13. return inetAddress.getHostAddress().toString();
  14. }
  15. }
  16. }
  17. }
  18. catch (SocketException ex)
  19. {
  20. Log.e("WifiPreference IpAddress", ex.toString());
  21. }
  22. return null;
  23. }

原文地址:https://www.cnblogs.com/pengwenzheng/p/9913195.html

时间: 2024-08-02 12:33:00

java 获取ip地址的相关文章

Java获取IP地址:request.getRemoteAddr()警惕(转)

原文出处:http://xiaoboss.iteye.com/blog/1181488 在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr() ,这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了. 如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr()

Java获取ip地址的几种方法

以下内容介绍下java获取ip地址的几种思路. 1.直接利用java.net.InetAddress类获取,不过这种方法只在windows环境下有效,在linux环境下只能获取localhost地址(即/etc/hosts文件内容) 代码如下: 1 import java.net.InetAddress; 2 3 /** 4 * This method works well in windows system. 5 * In Linux system it returns 127.0.0.1 t

java获取ip地址

有很多应用需要取得来访者的IP地址,比如防止未授权用户或恶意用户的访问等.J2EE的SERVLET标准接口javax.servlet.http.HttpServletRequest提供了getRemoteAddr()方法,用来取得来访者的IP地址. request.getRemoteAddr()这种方法在大部分情况下获得的IP都是有效的.但是在客户通过向代理软件就不能获取到客户端的真实IP地址了.经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的IP,服务器端应用也

Java获取IP地址:request.getRemoteAddr()警惕

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr() ,这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了. 如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr() 方法获取的IP地址是:127.0.0.1 或 192.168.1.110 ,而并不是客

Java获取IP地址,IpUtils工具类,Java IP地址获取

================================ ©Copyright 蕃薯耀 2020-01-17 https://www.cnblogs.com/fanshuyao/ import java.net.Inet4Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.util.Enumeration; import javax.servlet.http.HttpSer

java如何获取IP地址

import java.net.Inet6Address; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; public class GetMacIp { /** * @Title: main * @Description: TODO * @param :@param args * @retur

Java如何根据主机名(域名)获取IP地址?

在Java编程中,如何根据主机名(域名)获取IP地址? 以下示例显示了如何通过net.InetAddress类的InetAddress.getByName()方法将主机名更改为指定的IP地址. package com.yiibai; import java.net.InetAddress; import java.net.UnknownHostException; public class HostSpecificIPAddress { public static void main(Strin

php 获取 ip 地址 函数:

php 获取 ip 地址 函数:function getIP () //取IP函数 { global $_SERVER; if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } else if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } else if (getenv('REMOTE_ADDR')) { $ip =

四、获取IP地址工具包

由于getHostAddress()方法在Linux下读取hosts文件获取的是127.0.0.1 InetAddress.getLocalHost().getHostAddress() 所以这里采用NetworkInterfaces + getInetAddresses来获取IP地址 import com.luckin.compass.base.common.constants.ReturnStatus; import com.luckin.compass.base.common.except