0

当平板电脑通过电线(充电器/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;
        }
4

1 回答 1

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.
于 2012-07-09T06:41:37.237 回答