我使用android设备如何检查何时网络在Android设备上不可用?
我想在应用程序启动时检查当前的网络状态。
所以,我试试这个。
ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERIVCE);
NetworkInfo ethernet = manager.getNetworkInfo(ConnectivityManager.TYPE_ETHERNET);
NetworkInfo wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (wifi.isConnected()) {
Log.d(TAG, "WIFI isConnected");
} else if (ethernet.isConnected()) {
Log.d(TAG, "Ethernet isConnected");
} else if (wifi.isAvaiable()) {
Log.d(TAG, "Wifi not connect, but wifi isAvailable");
} else {
Log.d(TAG, "not available network");
}
此源码检查Wi-Fi和以太网的网络状态。
但是当无法联网时。不检查。
我的设备如果使用wifi,请在我的设备上连接无线LAN。
当我的设备上断开无线局域网。我的来源是检查wifi.isAvailable()
总之,
如何检查时,网络不可用(电流源,当网络不可用检查wifi.isAvailable)
当连接无线局域网和Wifi关闭,请检查
wifi.isAvailable()
但是当断开无线局域网和Wifi的连接时,请检查wifi.isAvailable()
如何区分这种情况。
谢谢。
我认为这段代码将返回“主线程异常的android os网络” –
@MohammadHaidar你是对的,从工作线程调用这个 – Shrikant