【问题标题】:Android: Wi-Fi strength is not changing when phone SleepsAndroid:手机休眠时 Wi-Fi 强度没有变化
【发布时间】:2013-02-25 21:57:03
【问题描述】:

在做了一些测试后,我注意到当手机进入睡眠模式或锁定模式时,Wi-Fi 信号强度 (RSSI) 和 Wi-Fi 链接速度不再变化(我正在运行 aa 服务和在后台记录强度和链接速度) 另一方面,即使手机进入睡眠模式,GPS 位置也会发生变化。

对于 Wi-Fi 强度为什么会发生这种情况,有什么解释吗?如果是这样,是否有解决方法?

这是我用来获取 Wi-Fi 信息的函数:

private int getStrengthFromWifi() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo Info = cm.getActiveNetworkInfo();
    if (Info == null || !Info.isConnectedOrConnecting()) {
        Log.i("MyAppLog - no data (Wifi or Cellular)",
                "No data (Wifi or Cellular)");
        return 0;
    } else {
        int netType = Info.getType();

        if (netType == ConnectivityManager.TYPE_WIFI) {
            WifiManager wifiManager = (WifiManager) getApplicationContext()
                    .getSystemService(Context.WIFI_SERVICE);
            int linkSpeed = wifiManager.getConnectionInfo().getLinkSpeed();
            int wifiStrength = wifiManager.getConnectionInfo().getRssi();
            Log.i("MyAppLog - Link Speed + Wifi Strength",
                    "Wifi Connection : linkSpeed " + linkSpeed
                            + " and Wifi Strength " + wifiStrength);

            return wifiStrength;
        }
    }
    return 0;
}

【问题讨论】:

    标签: java android networking wifi


    【解决方案1】:

    您需要从系统获取 WIFI_MODE_FULL_HIGH_PERF WifiLock 以便在系统进入低功耗状态时继续接收对 wifi 事件的响应。

    请查看 Android SDK 文档以获取 wifi 锁:https://developer.android.com/reference/android/net/wifi/WifiManager.WifiLock.html

    请务必查看此堆栈溢出问题的答案,以调整设置以确保 wifi 不会休眠: How do I keep Wifi from disconnecting when phone is asleep?

    XDA 在这里为您提供一些有用的信息:http://forum.xda-developers.com/showthread.php?t=1625705

    【讨论】:

      【解决方案2】:

      解释是,当设备进入睡眠状态时,它会尝试通过关闭非必要功能来节省电量。您可能可以获取WakeLock 以继续跟踪信号强度和速度,但您会耗尽电池...所以请谨慎使用。

      【讨论】:

        猜你喜欢
        • 2013-02-02
        • 2023-03-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-30
        • 2012-05-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多