当平板电脑通过电线(充电器/ usb)连接时,wifi无法休眠,当设备被拔下时,wifi进入睡眠状态,当我敲击屏幕时,Wifi的图标为蓝色,但我不知道有互联网连接,有时图标是灰色的,我也没有互联网。
我已经编程,如果没有连接并且服务器连接超时我得到错误,这些功能在图标为灰色时有效,但如果图标为蓝色,则小部件挂起,当我进入时它再次起作用关掉wifi,有什么不对? 我想如果有蓝色图标它认为我有连接到互联网,但我接下来检查服务器是否响应(3秒),它应该工作。但它一直在思考,直到关闭wifi。
在手机上我有2.2而我没有任何麻烦,在平板电脑上我已经4.0.3
wifi = conn.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
mobile = conn.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (wifi.isConnected() || mobile.isConnected()) {
try {
URL url = new URL(uri);
HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
urlc.setConnectTimeout(3000);
urlc.connect();
if (urlc.getResponseCode() == 200) {
return true;
} else {
return false;
}
} catch (IOException e) {
return false;
}
} else {
return false;
}
答案 0 :(得分:0)
Android 4.0采用了更积极的节能方法,可能会让你感到困惑。 我只是重新启用wifi ...连接设置需要3到5秒才能获得新的DHCP租约。如果它已经知道你是谁(即IP),它会更快。可能是一个组合 Android休眠和你的AP都设置为过于积极地发布租约(TTL)。你遇到什么平板电脑和wifi路由器?
WifiManager wifi;
wifi = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifi.getConnectionInfo(); // extra if you want connection info
wifi.setWifiEnabled(true); // turn it on , if its already on no harm.