メインコンテンツにスキップ
プラグインに戻る
@capgo/capacitor-wifi
チュートリアル
github.com/Cap-go による

Wi-Fi

Capacitor アプリの Wi-Fi 接続を管理する

ガイド

Wi-Fiに関するチュートリアル

Using @capgo/capacitor-wifi

Wi-Fi接続を管理するためのデバイスのWi-Fi接続プラグイン

インストール

bun add @capgo/capacitor-wifi
bunx cap sync

このプラグインが公開するもの

  • addNetwork - Android SDK 30以上の場合、システムのWi-Fi設定を開き、ネットワークを事前に埋め込んだ状態で表示します。iOSの場合、ネットワークに直接接続します。
  • connect - Wi-Fiネットワークに接続します。Androidの場合、デフォルトではネットワークを経由してトラフィックをルーティングしないように、暫定接続を作成します。autoRouteTrafficをtrueに設定すると、接続されたネットワークにアプリのトラフィックをバインドできます (ローカル/デバイスホストAPの場合に便利)。Androidで持続的な接続を作成するには、addNetwork()を使用してください。iOSの場合、持続的な接続を作成します。
  • disconnect - 現在のWi-Fiネットワークから切断します。iOSの場合、追加されたネットワークのみを切断します。
  • getAvailableNetworks - 最近のスキャンから利用可能なWi-Fiネットワークの一覧を取得します。Androidのみで利用可能です。

例の使用方法

addNetwork

Show a system dialog to add a Wi-Fi network to the device. On Android SDK 30+, this opens the system Wi-Fi settings with the network pre-filled. On iOS, this connects to the network directly.

import { CapacitorWifi } from '@capgo/capacitor-wifi';

await CapacitorWifi.addNetwork({
  ssid: 'MyNetwork',
  password: 'mypassword',
  isHiddenSsid: false,
  securityType: NetworkSecurityType.WPA2_PSK
});

connect

Wi-Fiネットワークに接続します。Androidでは、デフォルトではネットワークを経由してアプリのトラフィックをルーティングしないように、臨時接続を作成します。autoRouteTrafficをtrueに設定すると、接続したネットワークにアプリのトラフィックをバインドできます (ローカル/デバイスホストされたAPの場合に便利)。Androidで持続的な接続を作成したい場合は、addNetwork()を使用してください。iOSでは、持続的な接続を作成します。

import { CapacitorWifi } from '@capgo/capacitor-wifi';

await CapacitorWifi.connect({
  ssid: 'MyNetwork',
  password: 'mypassword',
  autoRouteTraffic: true // Android only: route app traffic through this network
});

disconnect

現在のWi-Fiネットワークから切断します。iOSでは、このプラグインを介して追加されたネットワークのみを切断します。

import { CapacitorWifi } from '@capgo/capacitor-wifi';

await CapacitorWifi.disconnect();

getAvailableNetworks

最近のスキャンから利用可能なWi-Fiネットワークの一覧を取得します。Androidのみで利用可能です。

import { CapacitorWifi } from '@capgo/capacitor-wifi';

const { networks } = await CapacitorWifi.getAvailableNetworks();
networks.forEach(network => {
  console.log(`SSID: ${network.ssid}, Signal: ${network.rssi} dBm`);
});

フルリファレンス