WIFI签到app安卓客户端,有方案和源代码的哦
2016-03-28 16:36 阅读(186)

概要: 
首先给移动开发者推荐一个神器: Bmob,签到app,安卓客户端,服务端使用Bmob服务,利用办公室wifi的MAC地址签到,作者:JKXQJ 

1、做这个app的原因:本周公司行政跟我说我这个月有很多次没有签到,于是决定周末抽时间做一个基于路由器mac地址的签到app。 

2、当天下午我就在公司画好了草图,准备周末做出来。 




3、其实这个app很简单,后台用了bmob服务之后,开发效率翻倍,半天就做出来了。 



4、核心代码如下: 

//检查连接的是什么网络
    public  Integer checkWifi(Context context) {
    ConnectivityManager ConnectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo mNetworkInfo =  ConnectivityManager.getActiveNetworkInfo();
            if (mNetworkInfo.getState() == NetworkInfo.State.CONNECTED) {
                if (mNetworkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
                    return 1;  //返回1,连接的是移动网络
                } else if (mNetworkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
                    return 2;  //返回2,连接的是wifi
                }
            } else {
                return 3; //返回3,没有连接。
            }
        return 3;
    }
//获取IP
    public String getLocalIpAddress() {
        try {
            for (Enumerationen = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) {
                NetworkInterface intf = en.nextElement();
                for (EnumerationenumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
                    InetAddress inetAddress = enumIpAddr.nextElement();
                    if (!inetAddress.isLoopbackAddress()) {
                        return inetAddress.getHostAddress().toString();
                    }
                }
            }
        } catch (SocketException ex) {
            Log.e("IP 地址为:", ex.toString());
        }
        return null;
    }
//获取MAC
    public String getLocalMacAddress() {
        WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
        WifiInfo info = wifi.getConnectionInfo();
        return info.getMacAddress();
    }

5、项目代码: 
本项目已经开源,挂在本人的github上,界面做的比较简单,但是基本功能是没有问题的,欢迎大家下载。 
https://github.com/jkxqj/BianQian


感谢作者:jkxqj