Iniziato all'azione
Copiare una richiesta di impostazione con i passaggi di installazione e la guida markdown completa per questo 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.
Installare
Sezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo competenze al tuo strumento AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUsa poi il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-wifi` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:
bun add @capgo/capacitor-wifibunx cap syncImporta
Sezione intitolata “Importa”import { CapacitorWifi } from '@capgo/capacitor-wifi';API Panoramica
Sezione intitolata “API Overview”addNetwork
Sezione intitolata “addNetwork”Mostra un dialogo del sistema per aggiungere una rete Wi-Fi al dispositivo. Su Android SDK 30+, questo apre le impostazioni di rete Wi-Fi del sistema con la rete precompilata. Su iOS, questo si connette direttamente alla rete.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.addNetwork({ ssid: 'MyNetwork', password: 'mypassword', isHiddenSsid: false, securityType: NetworkSecurityType.WPA2_PSK});connect
Sezione intitolata “connect”Connetti a una rete Wi-Fi. Su Android, questo crea una connessione temporanea che non invia il traffico per impostazione predefinita. Imposta autoRouteTraffic su true per legare il traffico dell'app alla rete connessa (utile per AP locali/host device). Per una connessione persistente su Android, utilizza addNetwork() al posto di questo. Su iOS, questo crea una connessione persistente.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.connect({ ssid: 'MyNetwork', password: 'mypassword', autoRouteTraffic: true // Android only: route app traffic through this network});disconnect
Sezione intitolata “disconnect”Disconnetti dalla rete Wi-Fi corrente. Su iOS, si disconnette solo dalle reti aggiunte tramite questo plugin.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.disconnect();getAvailableNetworks
Sezione intitolata “getAvailableNetworks”Ottieni l'elenco delle reti Wi-Fi disponibili dall'ultimo scan. Disponibile solo su 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
Sezione intitolata “getIpAddress”Ottieni l'indirizzo IP corrente del dispositivo. Disponibile su entrambi Android e iOS.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { ipAddress } = await CapacitorWifi.getIpAddress();console.log('IP Address:', ipAddress);getRssi
Sezione intitolata “getRssi”Ottieni l'indicatore di potenza ricevuta (RSSI) della rete corrente in dBm. Disponibile solo su Android.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { rssi } = await CapacitorWifi.getRssi();console.log('Signal strength:', rssi, 'dBm');getSsid
Sezione intitolata “getSsid”Ottieni l'identificatore della rete (SSID) della rete corrente. Disponibile su entrambi Android e iOS.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { ssid } = await CapacitorWifi.getSsid();console.log('Connected to:', ssid);getWifiInfo
Sezione intitolata “getWifiInfo”Ottieni informazioni dettagliate sulla rete WiFi attualmente connessa. Questo metodo fornisce informazioni dettagliate sulla rete, compreso SSID, BSSID, indirizzo IP, frequenza, velocità di collegamento e intensità del segnale in un'unica chiamata. Su iOS, alcuni campi potrebbero non essere disponibili e saranno indefiniti.
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
Sottosezione intitolata “isEnabled”Verifica se il Wi-Fi è abilitato sul dispositivo. Disponibile solo su Android.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const { enabled } = await CapacitorWifi.isEnabled();console.log('WiFi is', enabled ? 'enabled' : 'disabled');startScan
Sottosezione intitolata “startScan”Avvia la scansione dei reti Wi-Fi. Disponibile solo su Android. I risultati sono inviati tramite l'ascoltatore di eventi ‘networksScanned’. Nota: potrebbe fallire a causa della limitazione del sistema o di problemi hardware.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
await CapacitorWifi.addListener('networksScanned', () => { console.log('Scan completed');});await CapacitorWifi.startScan();checkPermissions
Sottosezione intitolata “checkPermissions”Verifica lo stato di autorizzazione corrente per l'accesso alla posizione. L'autorizzazione alla posizione è richiesta per le operazioni di Wi-Fi su entrambe le piattaforme.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const status = await CapacitorWifi.checkPermissions();console.log('Location permission:', status.location);requestPermissions
Sottosezione intitolata “requestPermissions”Richiedi all'utente le autorizzazioni per l'accesso alla posizione. L'autorizzazione alla posizione è richiesta per le operazioni di Wi-Fi su entrambe le piattaforme.
import { CapacitorWifi } from '@capgo/capacitor-wifi';
const status = await CapacitorWifi.requestPermissions();if (status.location === 'granted') { console.log('Permission granted');}Riferimento di tipo
Sottosezione intitolata “Riferimento di tipo”AddNetworkOptions
Sottosezione intitolata “AddNetworkOptions”Opzioni per l'aggiunta di una rete.
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
Sottosezione intitolata “ConnectOptions”Opzioni per la connessione a una rete.
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
Sottosezione intitolata “DisconnectOptions”Opzioni per la disconnessione da una rete.
export interface DisconnectOptions { /** * The SSID of the network to disconnect from (optional) * * @since 7.0.0 */ ssid?: string;}GetAvailableNetworksResult
Sezione intitolata “GetAvailableNetworksResult”Risultato da getAvailableNetworks().
export interface GetAvailableNetworksResult { /** * List of available networks * * @since 7.0.0 */ networks: Network[];}GetIpAddressResult
Sezione intitolata “GetIpAddressResult”Risultato da getIpAddress().
export interface GetIpAddressResult { /** * The device's IP address * * @since 7.0.0 */ ipAddress: string;}GetRssiResult
Sezione intitolata “GetRssiResult”Risultato da getRssi().
export interface GetRssiResult { /** * The signal strength in dBm * * @since 7.0.0 */ rssi: number;}GetSsidResult
Sezione intitolata “GetSsidResult”Risultato da getSsid().
export interface GetSsidResult { /** * The SSID of the current network * * @since 7.0.0 */ ssid: string;}WifiInfo
Sezione intitolata “WifiInfo”Informazioni WiFi complete.
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
Sezione intitolata “IsEnabledResult”Risultato da isEnabled().
export interface IsEnabledResult { /** * Whether Wi-Fi is enabled * * @since 7.0.0 */ enabled: boolean;}PermissionStatus
Sezione intitolata “PermissionStatus”Stato dei permessi.
export interface PermissionStatus { /** * Location permission state * * @since 7.0.0 */ location: PermissionState;}RequestPermissionsOptions
Sezione intitolata “RequestPermissionsOptions”Opzioni per richiedere i permessi.
export interface RequestPermissionsOptions { /** * Permissions to request * * @since 7.0.0 */ permissions?: 'location'[];}NetworkSecurityType
Sezione intitolata “Tipo di sicurezza di rete”Tipi di sicurezza di rete.
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,}Fonte di verità
Sezione intitolata “Fonte di verità”Questa pagina è generata dal plugin’s src/definitions.tsRisciacqua la sincronizzazione quando le informazioni pubbliche API cambiano in fase di sviluppo.
Continua da dove sei arrivato con l'assistenza iniziale
Se stai utilizzandoPer pianificare dashboard e __CAPGO_KEEP_0__ operazioni, connettilo con Getting Started to plan dashboard and API operations, connect it with Utilizzo di @capgo/capacitor-wifi per la capacità nativa in Utilizzo di @capgo/capacitor-wifi API Panoramica per la dettaglio di implementazione in API Panoramica Introduzione per la dettaglio di implementazione in Introduzione API Chiavi per la dettaglio di implementazione in API Chiavi, e Dispositivi per la dettaglio di implementazione in Dispositivi.