WifiNetworkSpecifier.Builder.Build メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
Wi-Fi ネットワークを要求するために使用する指定子オブジェクトを作成します。
[Android.Runtime.Register("build", "()Landroid/net/wifi/WifiNetworkSpecifier;", "", ApiSince=29)]
public Android.Net.Wifi.WifiNetworkSpecifier Build();
[<Android.Runtime.Register("build", "()Landroid/net/wifi/WifiNetworkSpecifier;", "", ApiSince=29)>]
member this.Build : unit -> Android.Net.Wifi.WifiNetworkSpecifier
返品
NetworkSpecifierの例。
- 属性
注釈
Wi-Fi ネットワークを要求するために使用する指定子オブジェクトを作成します。 生成されたNetworkSpecifierは、NetworkRequestをビルドするときにNetworkRequest.Builder#setNetworkSpecifier(NetworkSpecifier)で使用する必要があります。
ConnectivityManager#requestNetwork(NetworkRequest, NetworkCallback)またはバリアントと共に使用する場合、一部のデバイスでは、指定子メンバーのすべての組み合わせでネットワークの要求がサポートされない場合があることに注意してください。 たとえば、一部のデバイスでは、ローカルのみのネットワーク ( NetworkCapabilities#NET_CAPABILITY_INTERNET 機能のないネットワーク) の要求のみをサポートしたり、特定のバンドの要求をサポートしていない場合があります。 ただし、ネットワークを監視するが要求しない ConnectivityManager#registerNetworkCallback(NetworkRequest, NetworkCallback) またはその他の同様の方法を使用する場合は、制限はありません。
デバイスが要求をサポートできない場合、アプリは NetworkCallback#onUnavailable()への呼び出しを受け取ります。
ローカル専用ネットワークを要求する場合、アプリはネットワーク マッチ パラメーターの組み合わせを設定できます。 <li> SSID パターンは、 #setSsidPattern(PatternMatcher) を使用するか、 #setSsid(String)を使用して特定の SSID を使用します。
</li> AND/OR <li>#setBssidPattern(MacAddress, MacAddress) を使用した BSSID パターンまたは #setBssid(MacAddress)</li> を使用した特定の BSSID パターンを使用して、設定されたパラメーターに一致するネットワークへの接続をトリガーします。 システムは、要求に一致するネットワークのセットを検索し、ユーザーにシステム ダイアログを表示します。これにより、ユーザーは、要求に接続する、または拒否する特定の Wi-Fi ネットワークを選択できます。
ユーザーのプライバシーを保護するために、パターンの照合機能にいくつかの制限が適用されます。 特に、システムが一部のアプリからの NetworkRequest を満たすためにネットワークを起動する場合、システムは、ネットワークを要求したアプリ以外のアプリの SSID パターンとネットワークの実際の SSID との一致を拒否する権利を留保し、SSID が要求されたパターンと一致する場合でも、それらのコールバックを送信しません。
例: SSID プレフィックスが "test" で BSSID OUI が "10:03:23" のオープン ネットワークに接続するには:
{@code
final NetworkSpecifier specifier =
new Builder()
.setSsidPattern(new PatternMatcher("test", PatternMatcher.PATTERN_PREFIX))
.setBssidPattern(MacAddress.fromString("10:03:23:00:00:00"),
MacAddress.fromString("ff:ff:ff:00:00:00"))
.build()
final NetworkRequest request =
new NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.removeCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.setNetworkSpecifier(specifier)
.build();
final ConnectivityManager connectivityManager =
context.getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkCallback networkCallback = new NetworkCallback() {
...
{@literal @}Override
void onAvailable(...) {}
// etc.
};
connectivityManager.requestNetwork(request, networkCallback);
}
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。