I am referring to a situation when device is connected to access point but for some reason is blocked from accessing internet using this AP.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
for check wifi is enabled or not
WifiManager wfManager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
if(wfManager.isWifiEnabled())
{
//Code
}
else
{
//Code
}
for check internet connection..
public boolean isOnline()
{
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting())
{
//Try This
int i =netInfo.getType() ;
System.out.println("Net Type ="+i);
return true;
}
return false;
}
回答2:
private boolean connectionAvailable() {
boolean connected = false;
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED) {
//we are connected to a network
connected = true;
}
return connected;
}
回答3:
These look like something that can solve the problem:
How to do a true Java ping from Windows?
How to check if internet connection is present in java?
Detect internet Connection using Java