通过InetAddress.getLocalHost()得到始终是“127.0.0.1”,要想得到真正的网络ip地址要通过下面的方法:

首先新建一个工程,修改AndroidManifest.xml文件增加用户权限,如下:

<uses-permission android:name="android.permission.INTERNET"/>   <!--必写--><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>  <!--必写—>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

主要函数代码如下:

// 得到本机ip地址    public String getLocalHostIp()    {        String ipaddress = "";        try        {            Enumeration<NetworkInterface> en = NetworkInterface                    .getNetworkInterfaces();            // 遍历所用的网络接口            while (en.hasMoreElements())            {                NetworkInterface nif = en.nextElement();// 得到每一个网络接口绑定的所有ip                Enumeration<InetAddress> inet = nif.getInetAddresses();                // 遍历每一个接口绑定的所有ip                while (inet.hasMoreElements())                {                    InetAddress ip = inet.nextElement();                    if (!ip.isLoopbackAddress()                            && InetAddressUtils.isIPv4Address(ip                                    .getHostAddress()))                    {                        return ipaddress = "本机的ip是" + ":" + ip.getHostAddress();                    }                }            }        }        catch (SocketException e)        {            Log.e("feige", "获取本地ip地址失败");            e.printStackTrace();        }        return ipaddress;    }    // 得到本机Mac地址    public String getLocalMac()    {        String mac = "";        // 获取wifi管理器        WifiManager wifiMng = (WifiManager) getSystemService(Context.WIFI_SERVICE);        WifiInfo wifiInfor = wifiMng.getConnectionInfo();        mac = "本机的mac地址是:" + wifiInfor.getMacAddress();        return mac;    }

我是天王盖地虎的分割线

源代码:http://pan.baidu.com/s/1dD1Qx01

获取MAC地址.zip

转载请注明出处:http://www.cnblogs.com/yydcdut/p/3759968.html

参考:http://blog.sina.com.cn/s/blog_7ffb8dd501012z0v.html

更多相关文章

  1. 【Android(安卓)应用开发】GitHub 优秀的 Android(安卓)开源项目
  2. SDK + ADT + Android(安卓)Studio 国内下载地址
  3. Android(安卓)SDK 在线更新镜像服务器资源
  4. Android中得到布局文件对象三种方式
  5. android好文章或博客地址收藏
  6. 自定义一个dialog没有标题
  7. Android(安卓)Bitmap Drawable byte[] InputStream 相互转换方法
  8. android 连接远程数据库
  9. 【如何在不同Android设备中得到有效的AudioRecord实例】

随机推荐

  1. 开源 Android(安卓)开发平台 Rexsee 开发
  2. Android(安卓)7.1 车机 Android(安卓)系
  3. Android防止内存溢出浅析
  4. 华软项目总结
  5. Galaxy Nexus 和 Android(安卓)Ice Cream
  6. Android主流三方库源码分析(四、深入理解G
  7. 服务(Service)
  8. ym——安卓巴士总结了近百个Android优秀
  9. android四层框架
  10. 2014 年 Android(安卓)碎片化报告