6

さて、私は ScanResults を持っており、そこから SSID 、 BSSID 、すべての wifi の頻度を得ることができます。

List<ScanResult> results = wifi.getScanResults();

また、接続されたwifi情報があるので、そこから、接続されたwifiのSSIDと接続されたwifiのBSSIDも取得しています。

WifiManager wifi;
WifiInfo info;
wifi = (WifiManager) getContext().getSystemService(Context.WIFI_SERVICE);
info = wifi.getConnectionInfo();

接続されているwifiの周波数のみが必要ですが、SSIDとBSSIDを確認すると、2つのネットワークで同じになる可能性があります。接続されているWifiの周波数を見つけるにはどうすればよいですか。

また、そのwifiから、対応するチャンネル番号が必要です。

そのためのテーブルを見つけました

チャンネル番号 LOWER Freq(GHZ) CENTER Freq(GHZ) UPPER Freq(GHZ)

1 2401 2412 2423

2 2404 2417 2428

3 2411 2422 2433

4 2416 2427 2438

5 2421 2432 2443

6 2426 2437 2448

7 2431 2442 2453

8 2436 2447 2458

9 2441 2452 2463

10 2451 2457 2468

11 2451 2462 2473

12 2456 2467 2478

13 2461 2472 2483

14 2473 2484 2495

SDK が常にこのテーブルの中心周波数を提供するかどうか、および 5Ghz などの他の周波数を提供するかどうかを知りたいですか?

4

2 に答える 2

1

WifiInfo からの周波数は、Lollipop (API 21) http://developer.android.com/reference/android/net/wifi/WifiInfo.html#getFrequency()以降でのみ利用可能です。

android.net.wifi.WifiInfo

public int getFrequency ()

Returns the current frequency in FREQUENCY_UNITS.
于 2015-04-07T09:32:27.637 に答える