zoukankan      html  css  js  c++  java
  • android获取本地IP

    用WifiManager 方式来获取:

    public String getIp(){ 

    //获取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);
    return ip;

    }

    private String intToIp(int i) {

    return (i & 0xFF ) + "." +
    ((i >> 8 ) & 0xFF) + "." +
    ((i >> 16 ) & 0xFF) + "." +
    ( i >> 24 & 0xFF) ;
    }

    当然要加权限

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

    //结束

    另外一种既是java的获取方式

    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("here", ex.toString());
    }
    return null;
    }

    //需要添加的权限

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

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

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

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

  • 相关阅读:
    C++中的queue类、Qt中的QQueue类
    FeignClient传输实体类(包括GET、POST)
    Spring @Order注解的使用
    springboot整合fastdfs实现上传和下载
    Illegal group reference解决方法
    Java io下载并替换文件内容
    Java根据模板下载TXT文件
    SpringBoot--logger日志配置,使用@Slf4j注解
    SpringBoot--poi导出Excel文件
    JRebel for IntelliJ 热部署破解方法
  • 原文地址:https://www.cnblogs.com/weeds/p/2337676.html
Copyright © 2011-2022 走看看