很晚了,直接上代码:

/** * 获取外网的IP(要访问Url,要放到后台线程里处理) *  * @Title: GetNetIp * @Description: * @param @return * @return String * @throws */public static String GetNetIp() {URL infoUrl = null;InputStream inStream = null;String ipLine = "";HttpURLConnection httpConnection = null;try {infoUrl = new URL("http://ip168.com/");URLConnection connection = infoUrl.openConnection();httpConnection = (HttpURLConnection) connection;int responseCode = httpConnection.getResponseCode();if (responseCode == HttpURLConnection.HTTP_OK) {inStream = httpConnection.getInputStream();BufferedReader reader = new BufferedReader(new InputStreamReader(inStream, "utf-8"));StringBuilder strber = new StringBuilder();String line = null;while ((line = reader.readLine()) != null)strber.append(line + "\n");Pattern pattern = Pattern.compile("((?:(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d))))");Matcher matcher = pattern.matcher(strber.toString());if (matcher.find()) {ipLine = matcher.group();}}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {inStream.close();httpConnection.disconnect();} catch (IOException e) {e.printStackTrace();}}return ipLine;}/** * 获取本地IP *  * @return */public static String getLocalIpAddress() {try {Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces();while (en.hasMoreElements()) {NetworkInterface ni = en.nextElement();Enumeration<InetAddress> enIp = ni.getInetAddresses();while (enIp.hasMoreElements()) {InetAddress inet = enIp.nextElement();if (!inet.isLoopbackAddress()&& (inet instanceof Inet4Address)) {return inet.getHostAddress().toString();}}}} catch (SocketException e) {// TODO Auto-generated catch blocke.printStackTrace();}return "0";}


技术交流QQ群:6399844

更多相关文章

  1. Android真机调试不打印日志解决
  2. 演化理解 Android(安卓)异步加载图片
  3. Android判断当前App是在前台还是在后台
  4. Android(安卓)http 请求——AsyncHttpClient集成【解决重定向问
  5. android Binder机制深入浅出
  6. Android(安卓)Input Framework(三)---InputReader&InputDispatch
  7. ThreadLocal原理
  8. Android(安卓)okhttp上传多张图片 与 后台接收图片并保存
  9. Android结合kotlin使用coroutine的方法实例

随机推荐

  1. markdownm语法
  2. markdown语法学习及代码展示
  3. markdown语法与emmet语法
  4. markdown常用语法,emmet常用语法
  5. 0701作业markdown常用语法的使用和演示
  6. Markdown&emmet的基础语法
  7. 0701 Markdown语法/emmet语法
  8. MarkDown常用语法、Emmet常用语法
  9. mackdown语法练习
  10. markdown使用和emmet语法