com.yy.httpdns.util.NetworkUtil Maven / Gradle / Ivy
package com.yy.httpdns.util;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.util.Log;
import com.yy.httpdns.log.DnsLog;
/**
* Created by huangzhilong on 2016/8/12.
*/
public class NetworkUtil {
public final static int TYPE_NOT_NETWORK = 0;
public final static int TYPE_WIFI = 1;
public final static int TYPE_MOBILE = 2;
public final static int TYPE_UNKNOWN = -1;
public static int getNetworkStatus(Context context) {
try {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm != null && cm.getActiveNetworkInfo() != null) {
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI) {
return TYPE_WIFI;
} else if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE) {
return TYPE_MOBILE;
} else {
return TYPE_UNKNOWN;
}
}
} catch (Exception e) {
DnsLog.i("NetworkUtil", "getNetworkStatus exception, message=" + e.toString());
}
return TYPE_NOT_NETWORK;
}
public static String getWifiSSID(Context context) {
try {
WifiManager wm = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
if (wm != null && wm.getConnectionInfo() != null) {
return wm.getConnectionInfo().getSSID();
}
} catch (Exception e) {
DnsLog.i("NetworkUtil", "getWiFiSsid exception, message=" + e.toString());
}
return null;
}
public static int getMobileNetType(Context context) {
try {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm != null && cm.getActiveNetworkInfo() != null) {
return cm.getActiveNetworkInfo().getSubtype();
}
} catch (Exception e) {
DnsLog.i("NetworkUtil", "getMobileNetType exception, message=" + e.toString());
}
return TYPE_UNKNOWN;
}
}