Démarrage
Copiez une invite de configuration avec les étapes d'installation et le 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-device-info`
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/device-info/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.
Installation
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 en utilisant 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-device-info` 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-device-infobunx cap syncImporter
Section intitulée “Importer”import { DeviceInfo } from '@capgo/capacitor-device-info';Lire un instantané
Section intitulée “Lire un instantané”const snapshot = await DeviceInfo.getInfo();
console.log(snapshot.cpu.cores);console.log(snapshot.memory.usedPercent);console.log(snapshot.storage.freeBytes);console.log(snapshot.sensors?.pressureHpa);cpu.usagePercent est basé sur les deltas. Le premier échantillon natif peut l'ommettre ; appelez getInfo à nouveau plus tard ou utilisez la surveillance pour recevoir l'utilisation du processeur remplie après le deuxième échantillon.
Mise à jour en continu
Section intitulée “Mise à jour en continu”const handle = await DeviceInfo.addListener('deviceInfoUpdate', (sample) => { console.log(sample.sequence, sample.elapsedMs); console.log(sample.cpu.usagePercent); console.log(sample.sensors?.readings);});
await DeviceInfo.startMonitoring({ intervalMs: 1000, emitImmediately: true,});Arrêter les mises à jour
Section intitulée “Arrêter les mises à jour”await DeviceInfo.stopMonitoring();await handle.remove();Vous pouvez également arrêter automatiquement :
await DeviceInfo.startMonitoring({ intervalMs: 1000, durationMs: 60_000, sampleCount: 60,});Vérifier l'état de surveillance
Section intitulée « Vérifier l'état de surveillance »const state = await DeviceInfo.isMonitoring();
if (state.monitoring) { console.log(state.samplesEmitted);}Sur le champ des capteurs
Section intitulée « Sur le champ des capteurs »const { sensors, cpu, gpu } = await DeviceInfo.getInfo();
console.log(cpu.temperatureCelsius);console.log(gpu?.temperatureCelsius);console.log(sensors?.batteryTemperatureCelsius);console.log(sensors?.ambientTemperatureCelsius);console.log(sensors?.relativeHumidityPercent);console.log(sensors?.pressureHpa);console.log(sensors?.illuminanceLux);console.log(sensors?.proximityDistanceCm);console.log(sensors?.availableSensors);Les champs des capteurs sont facultatifs. Ils sont présents uniquement lorsque l'appareil, le système d'exploitation et le sandbox de l'application exposent ce métrique.
Notes de plateforme
Section intitulée « Notes de plateforme »- iOS n'exige aucune autorisation pour les métriques exposées. Il signale la disponibilité des capteurs CoreMotion mais pas la température CPU ou GPU brute.
- Android nécessite aucune autorisation pour les métriques exposées. Les températures du processeur et de la carte graphique sont des lectures de zones thermiques à effort maximum.
- Le support Web est à effort maximum et signale des tableaux de capteurs embarqués vides car les navigateurs ne révèlent pas les capteurs de dispositif natifs de manière cohérente.
Référence de type
Section intitulée “Référence de type”DeviceInfoSnapshot
Section intitulée “DeviceInfoSnapshot”export interface DeviceInfoSnapshot { timestamp: number; platform: 'ios' | 'android' | 'web'; cpu: CpuInfo; memory: MemoryInfo; storage: StorageInfo; gpu?: GpuInfo; thermalState?: ThermalState; lowPowerMode?: boolean; sensors?: OnboardSensorsInfo;}OnboardSensorsInfo
Section intitulée “OnboardSensorsInfo”export interface OnboardSensorsInfo { availableSensors?: OnboardSensorDescriptor[]; readings?: OnboardSensorReading[]; batteryTemperatureCelsius?: number; ambientTemperatureCelsius?: number; relativeHumidityPercent?: number; pressureHpa?: number; illuminanceLux?: number; proximityDistanceCm?: number;}MonitoringOptions
Section intitulée “MonitoringOptions”export interface MonitoringOptions { intervalMs?: number; durationMs?: number; sampleCount?: number; emitImmediately?: boolean;}Source de vérité
Section intitulée “Source Of Truth”Cette page est générée à partir du plugin’s src/definitions.ts. Re-run the sync when the public API changes upstream.
Continuez de Getting Started
Section intitulée “Continuez de Getting Started”Si vous utilisez Getting Started pour les diagnostics de dispositif, connectez-le avec @capgo/capacitor-device-info pour l'aperçu, Utilisez @capgo/capacitor-device-info pour un tutoriel, @capgo/capacitor-barometer pour des lectures de pression ciblées, et @capgo/capacitor-senseur-de-lumière pour des lectures ciblées du capteur de lumière.