Wi-Fi 接続の信号強度の変化を検出しようとしています。BroadcastReceiver でどのメソッドを使用すればよいか混乱しています。getConnectionInfo() と getScanResults() の使用の違いは何ですか?そこから、関連するメソッドを使用して rssi 値を取得できますか?
例: getConnectionInfo() を使用すると、後で getRssi() を使用します。または、getScanResults() と「レベル」プロパティを使用することもできます。
Toast を使用してそれらの値を表示しますが、常に同じ値が表示されるとは限りません。wifi conn が失われると、getConnectionInfo().getRssi() は -200 を示しますが、result.level は以前の値を示したままです。
何かご意見は?ありがとう!
String netSSID = wifi.wifiMgr.getConnectionInfo().getSSID();
int netRSSI = wifi.wifiMgr.getConnectionInfo().getRssi();
List<ScanResult> results = wifi.wifiMgr.getScanResults();
for (ScanResult result : results) {
if (result.SSID.equalsIgnoreCase(netSSID)) {
anothernetRSSI = result.level;
}
}