/**
* 判斷gprs網路是否開啟
*
* @param inContext
* @return boolean
*/
public boolean isGPRSActive(Context context)
{
ConnectivityManager manager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo gprs = manager
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
DetailedState detailedState = gprs.getDetailedState();
return DetailedState.CONNECTED == detailedState;
}
/**
* 判斷wifi是否開啟
*
* @param context
* @return
*/
public boolean isWifiActive(Context context)
{
ConnectivityManager manager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo wifi = manager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
return wifi.isConnectedOrConnecting();
}
/**
* 設定gprs狀態(開啟/關閉)
*
* @param context
* @param flag
* @return
*/
public int setGPRSStatus(Context context, boolean flag)
{
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
Method setMobileDataEnabl;
try
{
setMobileDataEnabl = cm.getClass().getDeclaredMethod(
"setMobileDataEnabled", boolean.class);
setMobileDataEnabl.invoke(cm, flag);
return 0;
} catch (Exception e)
{
e.printStackTrace();
return -1;
}
}
/**
* 設定wifi狀態(開啟/關閉)
*
* @param context
* @param flag
*/
public void setWifiStatus(Context context, boolean flag)
{
WifiManager mWifiManager = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
mWifiManager.setWifiEnabled(flag);
}