我正在尝试从我的应用程序中找出当前是否正在使用 wifi;不仅是连接,而且目前正在下载或上传某些内容。Android (4.0+) 似乎意识到了这一点,因为传输数据时 wifi 图标会发生变化。我有什么方法可以访问这些信息?
提前致谢。
经过更多研究后,我发现了 TrafficStats 类。不知道这有多可靠,但这是我的代码:
boolean isWifiInUse;
long lastTx,lastRx;
Runnable TestWifi = new Runnable() {
public void run() {
long cRx = TrafficStats.getTotalRxBytes() - TrafficStats.getMobileRxBytes();
long cTx = TrafficStats.getTotalTxBytes() - TrafficStats.getMobileTxBytes();
if (cTx - lastTx != 0 || cRx - lastRx != 0)
{
if (!isWifiInUse)
isWifiInUse = true;
}
else if (isWifiInUse)
{
isWifiInUse = false;
//ShowToast("Data no longer in use");
}
lastRx = cRx;
lastTx = cTx;
hand.postDelayed(this, 1000);
}
};
希望这可以帮助某人。