Guida
Come usare Network Diagnostics in Capacitor
Utilizzo di @capgo/capacitor-network-diagnostics
Diagnostica di rete nativa per app Capacitor che devono debuggare Wi-Fi limitati, captive portal, porte bloccate, errori WebSocket, download lenti e packet loss.
Installa
npm install @capgo/capacitor-network-diagnostics
npx cap sync
Cosa espone questo plugin
getNetworkStatus- Leggi il tipo di connessione nativa e i flag di rete della piattaforma.testUrl- Verifica la raggiungibilità di URL HTTP o HTTPS con status code e latenza.testPort- Apri un socket TCP nativo verso un host e una porta.testWebSocket- Valida unws://owss://handshake.testDownloadSpeed- Misura il throughput di download nativo.testPacketLoss- Stima la perdita di pacchetti a livello applicativo con probe ripetuti.runDiagnostics- Esegui un test diagnostico combinato e restituisci una lista di problemi.
Esempio d'uso
import { NetworkDiagnostics } from '@capgo/capacitor-network-diagnostics';
const report = await NetworkDiagnostics.runDiagnostics({
urls: [{ url: 'https://api.example.com/health' }],
ports: [{ host: 'api.example.com', port: 443 }],
websockets: [{ url: 'wss://ws.example.com/socket' }],
packetLoss: {
mode: 'tcp',
host: 'api.example.com',
port: 443,
count: 10,
},
});
console.log(report.status);
console.log(report.issues);
Workflow di supporto
Chiedi all'utente interessato di eseguire i test mentre è connesso al Wi-Fi o all'access point problematico. Invia i risultati al supporto con:
- connection type and OS network flags
- URL, porte o endpoint WebSocket falliti
- download Mbps
- percentuale di packet loss
- codici di errore e messaggi nativi
Il ping ICMP raw non è portabile su app iOS e Android, quindi il packet loss viene misurato tramite probe TCP o HTTP ripetuti.
Riferimento completo
- GitHub: https://github.com/Cap-go/capacitor-network-diagnostics/
- Docs: /docs/plugins/network-diagnostics/