Avvio
Copia un prompt di configurazione 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-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.
Installa
Sezione intitolata “Installa”Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo abilità 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-device-info` plugin in my project.Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche del tuo platform di seguito:
bun add @capgo/capacitor-device-infobunx cap syncImporta
Sezione intitolata “Importa”import { DeviceInfo } from '@capgo/capacitor-device-info';Leggi un snapshot
Sezione intitolata “Leggi un snapshot”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 è basato sul delta. La prima campionatura nativa può ometterlo; chiama getInfo nuovamente in un momento successivo o utilizza il monitoraggio per ricevere l'uso del processore popolato dopo la seconda campionatura.
Aggiorna in tempo reale
Sezione intitolata “Aggiorna in tempo reale”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,});Smetti le aggiornamenti
Sezione intitolata “Smetti le aggiornamenti”await DeviceInfo.stopMonitoring();await handle.remove();Puoi anche fermare automaticamente:
await DeviceInfo.startMonitoring({ intervalMs: 1000, durationMs: 60_000, sampleCount: 60,});Verifica lo stato di monitoraggio
Sezione intitolata “Verifica lo stato di monitoraggio”const state = await DeviceInfo.isMonitoring();
if (state.monitoring) { console.log(state.samplesEmitted);}Onboard i campi dei sensori
Sezione intitolata “Onboard i campi dei sensori”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);I campi dei sensori sono facoltativi. Sono presenti solo quando il dispositivo, il sistema operativo e il sandbox dell'app espongono quel metrica.
Note sulla piattaforma
Sezione intitolata “Note sulla piattaforma”- L'iOS non richiede alcun permesso per le metriche esposte. Riferisce la disponibilità dei sensori CoreMotion, ma non la temperatura CPU o GPU reale.
- Richiede Android nessuna autorizzazione per le metriche esposte. Le temperature del processore e della GPU sono letture di zona termica di miglior sforzo.
- La supporto web è di miglior sforzo e riferisce array di sensori a bordo vuoti perché i browser non espongono i sensori di dispositivo nativi in modo coerente.
Riferimento di tipo
Sottosezione intitolata “Riferimento di tipo”DeviceInfoSnapshot
Sottosezione intitolata “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
Sottosezione intitolata “OnboardSensorsInfo”export interface OnboardSensorsInfo { availableSensors?: OnboardSensorDescriptor[]; readings?: OnboardSensorReading[]; batteryTemperatureCelsius?: number; ambientTemperatureCelsius?: number; relativeHumidityPercent?: number; pressureHpa?: number; illuminanceLux?: number; proximityDistanceCm?: number;}MonitoringOptions
Sottosezione intitolata “MonitoringOptions”export interface MonitoringOptions { intervalMs?: number; durationMs?: number; sampleCount?: number; emitImmediately?: boolean;}Punto di verità
Sottosezione intitolata “Punto di verità”Questa pagina è generata dal plugin src/definitions.tsRiepiloga la sincronizzazione quando le informazioni pubbliche API cambiano in fase di sviluppo
Continua da Iniziare
Sezione intitolata “Continua da Iniziare”Se stai utilizzando Iniziare per i diagnosi di dispositivi, collega il dispositivo con @capgo/capacitor-device-info per un’overview, Utilizzare @capgo/capacitor-device-info per un tutorial, @capgo/capacitor-barometer per pressioni focalizzate di lettura, e @capgo/capacitor-sensore di luce per letture focalizzate del sensore di luce.