Usando @capgo/capacitor-device-info
Leggi metriche di CPU, memoria, GPU, storage, termica, bassa potenza e sensori integrati da un'app Capacitor.
Compatibilità
Questo plugin richiede Capacitor 8 o successivo (@capacitor/core >=8.0.0).
Installa
npm install @capgo/capacitor-device-info
npx cap sync
Cosa questo plugin espone
getInfo- Leggi un snapshot con CPU, memoria, GPU, storage, stato termico, modalità bassa potenza e sensori integrati.startMonitoring- Avvia snapshot periodici per dashboard di diagrammi e diagnostica.stopMonitoring- Fermare lo stream attivo.isMonitoring- Controlla lo stato dello stream e il conteggio delle sample emesse.removeAllListeners- Rimuovi ogni listener registrato sul plugin.deviceInfoUpdate- L'evento di ascolto emesso per ogni campione periodico.
Esempio di utilizzo
import { DeviceInfo } from '@capgo/capacitor-device-info';
const snapshot = await DeviceInfo.getInfo();
console.log(snapshot.cpu.cores);
console.log(snapshot.memory.usedPercent);
console.log(snapshot.gpu?.renderer);
console.log(snapshot.sensors?.pressureHpa);
Flusso di metriche in un grafico
import { DeviceInfo } from '@capgo/capacitor-device-info';
const samples: number[] = [];
const handle = await DeviceInfo.addListener('deviceInfoUpdate', (sample) => {
if (typeof sample.cpu.usagePercent === 'number') {
samples.push(sample.cpu.usagePercent);
}
});
await DeviceInfo.startMonitoring({
intervalMs: 1000,
emitImmediately: true,
});
// Later:
await DeviceInfo.stopMonitoring();
await handle.remove();
Il monitoraggio si avvia con un intervallo di 1000 ms, limita gli intervalli sotto i 250 ms e emette un campione immediato a meno che non si imposti emitImmediately: false. Chiamando startMonitoring() riavvia l'attuale sessione con le nuove opzioni. Ogni evento include il suo sequence, startedAt, e elapsedMs.
Usa durationMs o sampleCount per fermare automaticamente. Se non hai più bisogno di alcun ascoltatore, chiama await DeviceInfo.removeAllListeners().
Note sul sensore di bordo
I letture dei sensori sono facoltative perché i dispositivi espongono hardware diverso. L'Android può riferire la temperatura della batteria, la temperatura ambientale, l'umidità, la pressione barometrica, la luce, la vicinanza e i valori termici di CPU/GPU con miglioramento quando disponibili. L'iOS riferisce l'accessibilità dei sensori CoreMotion, lo stato termico e lo stato a basso consumo, ma le API pubbliche iOS non espongono le temperature CPU o GPU raw.
The plugin non recupera i dati del meteo. La temperatura e l'umidità esterne richiedono un'ubicazione e un'integrazione del meteo API separata.
Riferimento completo
Continua
Se stai utilizzando @capgo/capacitor-device-info per costruire schermate diagnostici o di monitoraggio, connettilo con @capgo/capacitor-device-info per l'overview, Avvio For l'installazione e API esempi, Utilizza @capgo/capacitor-barometro Per flussi di pressione dedicati, e Utilizza @capgo/capacitor-sensore di luce Per letture di luce dedicate.