Getting Started
Copiez une commande de configuration avec les étapes d'installation et la guide markdown complet pour ce plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-wifi`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/wifi/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installez
Section intitulée « Installation »Vous pouvez utiliser notre configuration assistée par l'IA pour installer le plugin. Ajoutez les Capgo compétences à votre outil IA à l'aide de la commande suivante :
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsEnsuite, utilisez la prompt suivante :
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-wifi` plugin in my project.Si vous préférez la configuration manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à la plateforme ci-dessous :
bun add @capgo/capacitor-wifibunx cap syncImporter
Section intitulée « Importer »import { CapacitorWifi } from '@capgo/capacitor-wifi';API Vue d'ensemble
Section intitulée “API Présentation”addNetwork
Section intitulée “addNetwork”Afficher un dialogue système pour ajouter un réseau Wi-Fi à l'appareil. Sur Android SDK 30+, cela ouvre les paramètres Wi-Fi système avec le réseau prérempli. Sur iOS, cela se connecte directement au réseau.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.addNetwork({ ssid: 'MyNetwork', password: 'mypassword', isHiddenSsid: false, securityType: NetworkSecurityType.WPA2_PSK});connect
Section intitulée “connect”Se connecter à un réseau Wi-Fi. Sur Android, cela crée une connexion temporaire qui n'envoie pas les données par défaut par le réseau. Définir autoRouteTraffic sur true pour lier le trafic de l'application au réseau connecté (utile pour les AP locaux/hôte de l'appareil). Pour une connexion persistante sur Android, utilisez addNetwork() à la place. Sur iOS, cela crée une connexion persistante.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.connect({ ssid: 'MyNetwork', password: 'mypassword', autoRouteTraffic: true // Android only: route app traffic through this network});disconnect
Section intitulée “disconnect”Se déconnecter du réseau Wi-Fi actuel. Sur iOS, cela ne se déconnecte que des réseaux ajoutés via ce plugin.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.disconnect();getAvailableNetworks
Section intitulée “getAvailableNetworks”Obtenir une liste des réseaux Wi-Fi disponibles à partir de la dernière scan. Seulement disponible sur Android.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { networks } = await CapacitorWifi.getAvailableNetworks();networks.forEach(network => { console.log(`SSID: ${network.ssid}, Signal: ${network.rssi} dBm`);});getIpAddress
Titre de la section « obtenir l'adresse IP »Obtenez l'adresse IP actuelle du dispositif. Disponible sur Android et iOS.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { ipAddress } = await CapacitorWifi.getIpAddress();console.log('IP Address:', ipAddress);Obtenez l'indicateur de force signal (RSSI) du réseau actuel en dBm. Seulement disponible sur Android.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { rssi } = await CapacitorWifi.getRssi();console.log('Signal strength:', rssi, 'dBm');Obtenez l'identifiant du service de réseau (SSID) du réseau actuel. Disponible sur Android et iOS.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { ssid } = await CapacitorWifi.getSsid();console.log('Connected to:', ssid);Obtenez des informations complètes sur le réseau WiFi actuellement connecté. Cette méthode fournit des informations détaillées sur le réseau, y compris l'SSID, le BSSID, l'adresse IP, la fréquence, la vitesse de liaison et la force du signal, dans une seule appelle. Sur iOS, certains champs peuvent ne pas être disponibles et seront indéfinis.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const info = await CapacitorWifi.getWifiInfo();console.log('Network:', info.ssid);console.log('BSSID:', info.bssid);console.log('IP:', info.ip);console.log('Frequency:', info.frequency, 'MHz');console.log('Speed:', info.linkSpeed, 'Mbps');console.log('Signal:', info.signalStrength);isEnabled
Titre de la section « isEnabled »Vérifiez si le Wi-Fi est activé sur l'appareil. Disponible uniquement sur Android.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { enabled } = await CapacitorWifi.isEnabled();console.log('WiFi is', enabled ? 'enabled' : 'disabled');startScan
Titre de la section « startScan »Démarrez la recherche de réseaux Wi-Fi. Disponible uniquement sur Android. Les résultats sont transmis via l'écouteur d'événement 'networksScanned'. Remarque : Cette opération peut échouer en raison de la limitation du système ou de problèmes matériels.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.addListener('networksScanned', () => { console.log('Scan completed');});await CapacitorWifi.startScan();checkPermissions
Titre de la section « checkPermissions »Vérifiez l'état actuel des autorisations pour l'accès à la localisation. L'autorisation de localisation est requise pour les opérations Wi-Fi sur les deux plateformes.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const status = await CapacitorWifi.checkPermissions();console.log('Location permission:', status.location);requestPermissions
Titre de la section « requestPermissions »Demandez les autorisations de localisation à l'utilisateur. L'autorisation de localisation est requise pour les opérations Wi-Fi sur les deux plateformes.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const status = await CapacitorWifi.requestPermissions();if (status.location === 'granted') { console.log('Permission granted');}Référence de type
Section intitulée « Référence de type »AddNetworkOptions
Section intitulée « Options d'ajout de réseau »Options pour ajouter un réseau.
export interface AddNetworkOptions { /** * The SSID of the network to add * * @since 7.0.0 */ ssid: string;
/** * The password for the network (optional for open networks) * * @since 7.0.0 */ password?: string;
/** * Whether the network is hidden (Android only) * * @since 7.0.0 * @default false */ isHiddenSsid?: boolean;
/** * The security type of the network (Android only) * * @since 7.0.0 * @default NetworkSecurityType.WPA2_PSK */ securityType?: NetworkSecurityType;}ConnectOptions
Section intitulée « Options de connexion »Options pour se connecter à un réseau.
export interface ConnectOptions { /** * The SSID of the network to connect to * * @since 7.0.0 */ ssid: string;
/** * The password for the network (optional for open networks) * * @since 7.0.0 */ password?: string;
/** * Whether the network is hidden (Android only) * * @since 7.0.0 * @default false */ isHiddenSsid?: boolean;
/** * Whether to automatically route app traffic through the connected Wi-Fi network (Android only) * When enabled, it binds the app process to the connected network using ConnectivityManager.bindProcessToNetwork() * This is useful for connecting to local/device-hosted APs (e.g., ESP32, IoT devices) that don't have internet access. * * @since 7.0.0 * @default false */ autoRouteTraffic?: boolean;}DisconnectOptions
Section intitulée « Options de déconnexion »Options pour se déconnecter d'un réseau.
export interface DisconnectOptions { /** * The SSID of the network to disconnect from (optional) * * @since 7.0.0 */ ssid?: string;}GetAvailableNetworksResult
Section intitulée “Résultat des réseaux disponibles”Résultat de getAvailableNetworks().
export interface GetAvailableNetworksResult { /** * List of available networks * * @since 7.0.0 */ networks: Network[];}GetIpAddressResult
Section intitulée “Résultat de l'adresse IP”Résultat de getIpAddress().
export interface GetIpAddressResult { /** * The device's IP address * * @since 7.0.0 */ ipAddress: string;}GetRssiResult
Section intitulée “Résultat du signal”Résultat de getRssi().
export interface GetRssiResult { /** * The signal strength in dBm * * @since 7.0.0 */ rssi: number;}GetSsidResult
Section intitulée “Résultat du SSID”Résultat de getSsid().
export interface GetSsidResult { /** * The SSID of the current network * * @since 7.0.0 */ ssid: string;}WifiInfo
Section intitulée “WifiInfo”Informations WiFi complètes.
export interface WifiInfo { /** * The SSID (network name) of the current network * * @since 7.0.0 */ ssid: string;
/** * The BSSID (MAC address) of the access point. * Not available on iOS. * * @since 7.0.0 */ bssid?: string;
/** * The device's IP address on the network * * @since 7.0.0 */ ip: string;
/** * The network frequency in MHz. * Not available on iOS. * * @since 7.0.0 */ frequency?: number;
/** * The connection speed in Mbps. * Not available on iOS. * * @since 7.0.0 */ linkSpeed?: number;
/** * The signal strength (0-100). * Calculated from RSSI on Android. * Not available on iOS. * * @since 7.0.0 */ signalStrength?: number;}IsEnabledResult
Section intitulée “IsEnabledResult”Résultat de isEnabled().
export interface IsEnabledResult { /** * Whether Wi-Fi is enabled * * @since 7.0.0 */ enabled: boolean;}PermissionStatus
Section intitulée “PermissionStatus”État de la permission.
export interface PermissionStatus { /** * Location permission state * * @since 7.0.0 */ location: PermissionState;}RequestPermissionsOptions
Section intitulée “RequestPermissionsOptions”Options pour demander les permissions.
export interface RequestPermissionsOptions { /** * Permissions to request * * @since 7.0.0 */ permissions?: 'location'[];}NetworkSecurityType
Section intitulée “Type de sécurité réseau”Types de sécurité réseau.
export enum NetworkSecurityType { /** * Open network with no security * * @since 7.0.0 */ OPEN = 0,
/** * WEP security * * @since 7.0.0 */ WEP = 1,
/** * WPA/WPA2 Personal (PSK) * * @since 7.0.0 */ WPA2_PSK = 2,
/** * WPA/WPA2/WPA3 Enterprise (EAP) * * @since 7.0.0 */ EAP = 3,
/** * WPA3 Personal (SAE) * * @since 7.0.0 */ SAE = 4,
/** * WPA3 Enterprise * * @since 7.0.0 */ WPA3_ENTERPRISE = 5,
/** * WPA3 Enterprise 192-bit mode * * @since 7.0.0 */ WPA3_ENTERPRISE_192_BIT = 6,
/** * Passpoint network * * @since 7.0.0 */ PASSPOINT = 7,
/** * Enhanced Open (OWE) * * @since 7.0.0 */ OWE = 8,
/** * WAPI PSK * * @since 7.0.0 */ WAPI_PSK = 9,
/** * WAPI Certificate * * @since 7.0.0 */ WAPI_CERT = 10,}Source de vérité
Section intitulée “Source de vérité”Cette page est générée à partir du plugin’s src/definitions.tsRe-run la synchronisation lorsque les informations publiques API changent en amont.
Continuez de la section « Début de l’expérience utilisateur »
Section intitulée « Continuez de la section « Début de l’expérience utilisateur » »Si vous utilisez Début de l’expérience utilisateur pour planifier le tableau de bord et les opérations API, connectez-l’avec Utilisation de @capgo/capacitor-wifi pour la capacité native dans Utilisation de @capgo/capacitor-wifi API Vue d'ensemble pour le détail d'implémentation dans API Vue d'ensemble Introduction pour le détail d'implémentation dans Introduction API Clés pour le détail d'implémentation dans API Clés, et Appareils pour le détail d'implémentation dans Appareils.