Wi-Fi インフラストラクチャの機能

Android Wi-Fi フレームワークを使用すると、ユーザーは、ネットワークが利用可能になったときと必要なときに適切な Wi-Fi ネットワークに接続できます。Android には次のようなさまざまな方法が用意されています。

  • オープン ネットワークの通知: ユーザーに利用可能な品質の良いオープンな Wi-Fi ネットワークがあることを知らせます
  • Wi-Fi を自動的に ON にする: 以前保存したネットワークの近くにユーザーがいる場合に Wi-Fi を再度有効にします
  • オープン ネットワークに接続する: ユーザーを自動的に品質の良いオープンな Wi-Fi ネットワークに接続します
  • バッジを表示する: 利用可能なネットワークの品質に関する情報を表示します

上記の機能は AOSP コードで実装されているため、明示的に有効化または設定する必要はありません。

オープン ネットワークの通知

「オープン ネットワークの通知」機能は、次の場合にユーザーに通知します。

  • Wi-Fi が有効になっている
  • デバイスが Wi-Fi ネットワークに接続されていない
  • オープンで十分に RSSI が高い(内部の Wi-Fi 選択アルゴリズムで使用されるものと同じ RSSI しきい値)Wi-Fi ネットワークが利用可能

ユーザーは、設定アプリを使用してこの機能を有効または無効にできます。

[設定] > [ネットワークとインターネット] > [Wi-Fi] > [Wi-Fi 設定] > [オープン ネットワークの通知]

オープン ネットワークの通知機能
図 1.[オープン ネットワークの通知] 機能

Wi‑Fi を自動的にオンにする

ネットワーク接続の品質が良くないなどさまざまな理由でユーザーが Wi-Fi を無効する場合がありますが、帰宅時に Wi-Fi を再度有効にすることを忘れてしまうことにつながるため、スマートホーム デバイスを制御できないといった経験をすることがあります。Android 9 で導入された [Wi-Fi を自動的に ON にする] 機能は、保存されかつ十分に高い RSSI を持つネットワークがデバイスの近くにある場合に、常に Wi-Fi を自動的に有効化することでこの問題を解決します。

ユーザーは、設定アプリを使用してこの機能を有効または無効にできます。

[設定] > [ネットワークとインターネット] > [Wi-Fi] > [Wi-Fi 設定] > [Wi-Fi を自動的に ON にする]

Wi‑Fi を自動的に ON にする
図 2. [Wi-Fi を自動的に ON にする] 機能

(場所の特定のために)Wi-Fi スキャンを有効にする必要があります。Wi-Fi スキャンが有効になっていない場合、Wi-Fi スキャンを有効にする権限がユーザーに求められます。 Wi-Fi 接続を再有効化する条件を満たしている Wi-Fi ネットワークの近くにデバイスがあるかどうかを調べるために、Wi-Fi スキャンが必要となります。

この機能により、保存された Wi-Fi が十分な品質であっても、ユーザーが Wi-Fi を無効にした直後に Wi-Fi を再び有効にすることはできません。たとえば、オフィスにいるユーザーがオフィスの Wi-Fi(保存されたネットワーク)に接続してから Wi-Fi を無効にすると、再有効化の条件にあう他の保存されたネットワークのある場所にユーザーが行くまで、この機能は Wi-Fi を再有効化しません。

オープン ネットワークに自動的に接続する

[オープン ネットワークに接続する] 機能は Android 8.0 以降で利用可能で、デバイスを品質の良いネットワークに自動的に接続します。条件は次のとおりです。

  • Wi-Fi が有効になっている
  • デバイスが Wi-Fi ネットワークに接続されていない
  • 外部の「ネットワーク評価プロバイダ」の報告(次のセクションを参照)どおりのオープンかつ「品質が良い」Wi-Fi ネットワークが利用可能

ユーザーは、設定アプリを使用してこの機能を有効または無効にできます。

[設定] > [ネットワークとインターネット] > [Wi-Fi] > [Wi-Fi 設定] > [オープン ネットワークに接続する]

オープン ネットワークに接続する
図 3. [オープン ネットワーク機能に接続する] 機能と [ネットワーク評価プロバイダ] のメニュー

[ネットワーク評価プロバイダ] が選択されていない場合、[オープン ネットワーク機能に接続する] 機能は無効になります。ユーザーは、[ネットワーク評価プロバイダ] メニューで、利用可能なネットワーク評価プロバイダのうちいずれかを選択できます。

外部のネットワーク評価プロバイダ

品質の良い Wi-Fi ネットワークが何で構成されるかを見極めるため、Android はオープンな Wi-Fi ネットワークについての情報を提供する外部のネットワーク評価プロバイダ(ネットワーク スコアラーとも)をサポートしています。たとえば、ネットワーク スコアラーは、特定の Wi-Fi ネットワークの品質が良いかどうかを判断するために過去のパフォーマンス データ(例: 前回このアクセス ポイントの品質は良かったので今回も使える)を使用できます。

利用可能なネットワーク評価プロバイダの一覧は、[設定] > [ネットワークとインターネット] > [Wi-Fi] > [Wi-Fi 設定] > [詳細設定] > [ネットワーク評価プロバイダ] メニューにあります。ユーザーは、それらのうち 1 つを選択することも、選択しないこともできます。利用可能なものがないか選択されていない場合、[オープン ネットワークに接続する] 機能は無効になります。

外部のネットワーク評価プロバイダを提供する必要はありません。プロバイダを作成するには:

  • NetworkScoreManager に記載されたクラスを実装する。
  • 外部のネットワーク評価プロバイダは特権アプリである必要がある。
  • サービスの frameworks/base/core/res/res/values/config.xml のオーバーレイ設定ファイルの config_defaultNetworkRecommendationProviderPackage キーを更新することにより、カスタム実装を使用するようにシステムを設定する。

デフォルトのネットワーク評価プロバイダ機能を含めない場合は、プロバイダ プロパティのデフォルトを設定せずに AOSP の [ネットワーク評価プロバイダ] 画面を非表示にできます。

Wi-Fi ネットワーク バッジング

ネットワーク評価プロバイダから提供された情報は、利用可能な Wi-Fi ネットワークの品質についての情報を追加するために Wi-Fi 選択ツールでも使用されるので、ユーザーは Wi-Fi ネットワークを手動で選択できます。情報が利用可能(外部のネットワーク評価プロバイダによって提供されている)なネットワークでは、ネットワーク名の下に速度情報が表示されます。

Wi-Fi ネットワークの品質
図 4. ネットワークの品質に関する情報を含む Wi-Fi ネットワーク

この機能には外部のネットワーク評価プロバイダが必要なため、プロバイダが利用可能ではない、または選択されていない場合は速度や品質の情報も表示されません。