Getting Started
Ein Setup-Prompt mit den Installations-Schritten und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
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.
Installieren
Abschnitt mit dem Titel „Installieren“Sie können unsere AI-gestützte Einrichtung verwenden, um den Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten zu Ihrem AI-Tool hinzu, indem Sie die folgende Kommando ausführen:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsVerwenden Sie dann die folgende Anfrage:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-device-info` plugin in my project.Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und folgen Sie den unten angegebenen Plattform-spezifischen Anweisungen:
bun add @capgo/capacitor-device-infobunx cap syncImportieren
Abschnitt: Importierenimport { DeviceInfo } from '@capgo/capacitor-device-info';Ein Snapshot lesen
Abschnitt: Ein Snapshot lesenconst 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 Es ist delta-basiert. Die erste native Probe kann es auslassen; später nochmal aufrufen oder die Überwachung verwenden, um nach der zweiten Probe den mit Belegung gefüllten CPU-Aufruf zu erhalten. getInfo Stream-Updates
Abschnitt: Stream-Updates
Zwischenablage kopierenconst 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,});Abschnitt: Stream-Updates beenden
Abschnitt mit dem Titel „Updates beenden“await DeviceInfo.stopMonitoring();await handle.remove();Sie können auch automatisch stoppen:
await DeviceInfo.startMonitoring({ intervalMs: 1000, durationMs: 60_000, sampleCount: 60,});Überprüfen Sie den Überwachungsstatus
Abschnitt mit dem Titel „Überwachungsstatus überprüfen“const state = await DeviceInfo.isMonitoring();
if (state.monitoring) { console.log(state.samplesEmitted);}Sensorfelder einbinden
Abschnitt mit dem Titel „Sensorfelder einbinden“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);Sensorfelder sind optional. Sie sind nur dann vorhanden, wenn das Gerät, Betriebssystem und die App-Sandbox das Metrik offenlegen.
Plattformhinweise
Plattformhinweise- iOS benötigt keine Berechtigungen für die ausgeliefernten Metriken. Es meldet die Verfügbarkeit der CoreMotion-Sensoren, aber nicht die Rohwerte der CPU- oder GPU-Temperatur.
- Android benötigt keine Berechtigungen für die ausgeliefernten Metriken. CPU- und GPU-Temperaturen sind bestmögliche thermische-Zonen-Lesungen.
- Die Unterstützung von Web ist bestmöglich und meldet leere Bord-Sensor-Arrays, da Browser native Gerätesensoren nicht konsistent ausgeben.
Typenverweis
TypenverweisDeviceInfoSnapshot
DeviceInfoSnapshotexport interface DeviceInfoSnapshot { timestamp: number; platform: 'ios' | 'android' | 'web'; cpu: CpuInfo; memory: MemoryInfo; storage: StorageInfo; gpu?: GpuInfo; thermalState?: ThermalState; lowPowerMode?: boolean; sensors?: OnboardSensorsInfo;}OnboardSensorsInfo
OnboardSensorsInfoexport interface OnboardSensorsInfo { availableSensors?: OnboardSensorDescriptor[]; readings?: OnboardSensorReading[]; batteryTemperatureCelsius?: number; ambientTemperatureCelsius?: number; relativeHumidityPercent?: number; pressureHpa?: number; illuminanceLux?: number; proximityDistanceCm?: number;}MonitoringOptions
Überwachungsoptionenexport interface MonitoringOptions { intervalMs?: number; durationMs?: number; sampleCount?: number; emitImmediately?: boolean;}Quelle der Wahrheit
Abschnitt mit dem Titel „Quelle der Wahrheit“Diese Seite wird aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisation, wenn die öffentliche API upstream ändert.
Weiter von Getting Started
Abschnitt mit dem Titel „Weiter von Getting Started“Wenn Sie Getting Started für Gerätediagnosen verwenden, verbinden Sie es mit @capgo/capacitor-device-info für die Übersicht, Using @capgo/capacitor-device-info für eine Anleitung, @capgo/capacitor-barometer für konzentrierte Druckmessungen, und @capgo/capacitor-lichtsensor für konzentrierte Lichtsensormessungen.