Guide
Comment utiliser Device Info dans Capacitor
Utiliser @capgo/capacitor-device-info
Lire les métriques CPU, mémoire, GPU, stockage, thermiques, basse consommation et capteurs intégrés d'une app Capacitor.
Compatibilité
Ce plugin nécessite Capacitor 8 ou une version ultérieure (@capacitor/core >=8.0.0).
Installer
npm install @capgo/capacitor-device-info
npx cap sync
Ce que ce plugin expose
getInfo- Lire un snapshot incluant le CPU, la mémoire, le GPU, le stockage, l'état thermique, le mode économie d'énergie et les capteurs intégrés.startMonitoring- Lancer des snapshots périodiques pour des graphiques et des dashboards de diagnostic.stopMonitoring- Arrêter le flux actif.isMonitoring- Vérifier le statut du flux et le nombre d'échantillons émis.removeAllListeners- Supprimer tous les écouteurs enregistrés sur le plugin.deviceInfoUpdate- Événement listener émis pour chaque échantillon périodique.
Exemple d'utilisation
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);
Afficher les métriques dans un graphique
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();
Le monitoring utilise par défaut un intervalle de 1000 ms, limite les intervalles en dessous de 250 ms et émet un échantillon immédiat sauf si vous définissez emitImmediately: false. L'appel de startMonitoring() redémarre la session active avec les nouvelles options. Chaque événement inclut son sequence, startedAt, et elapsedMs.
Utiliser durationMs ou sampleCount pour s'arrêter automatiquement. Si vous n'avez plus besoin d'un listener, appelez await DeviceInfo.removeAllListeners().
Notes sur les capteurs embarqués
Les relevés de capteurs sont optionnels, car les appareils n'exposent pas tous le même matériel. Android peut fournir la température de la batterie, la température ambiante, l'humidité, la pression barométrique, la luminosité, la proximité, ainsi que, au mieux, les valeurs des zones thermiques CPU/GPU lorsqu'elles sont disponibles. iOS indique la disponibilité des capteurs CoreMotion, l'état thermique et l'état d'économie d'énergie, mais les API publiques d'iOS n'exposent pas la température brute du CPU ou du GPU.
Le plugin ne récupère pas les données météo. La température extérieure et l'humidité nécessitent une intégration API de localisation et de météo distincte.
Référence complète
Continuer
Si vous utilisez @capgo/capacitor-device-info pour créer des écrans de diagnostic ou de monitoring, connectez-l’avec @capgo/capacitor-device-info pour l'aperçu, Prise en main pour l'installation et des exemples API , Utiliser @capgo/capacitor-barometer pour le streaming de pression dédié, et Utiliser @capgo/capacitor-light-sensor pour des relevés de luminosité dédiés.