经过一些测试,我注意到当手机进入睡眠模式或锁定模式时,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;
}