Einstieg
Ein Setup-Vorschlag mit den Installationsanweisungen 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.
Install
InstallSie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie den Capgo-Fähigkeiten Ihre AI-Tool mithilfe der folgenden Befehl hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsDann verwenden Sie 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
Installationsanleitungimport { DeviceInfo } from '@capgo/capacitor-device-info';Ein Snapshot lesen
Abschnitt: 'Ein Snapshot lesen'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 ist delta-basiert. Die erste native Probe kann es überspringen; aufrufen getInfo wieder oder die Überwachung verwenden, um nach dem zweiten Sample den mit Daten gefüllten CPU-Aufruf zu erhalten.
Aktualisierungen streamen
Abschnitt: 'Aktualisierungen streamen'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,});Aktualisierungen stoppen
Abschnitt: 'Aktualisierungen stoppen'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 “Überprüfen Sie den Überwachungsstatus”const state = await DeviceInfo.isMonitoring();
if (state.monitoring) { console.log(state.samplesEmitted);}Sensorfelder einrichten
Abschnitt mit dem Titel “Sensorfelder einrichten”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, die Betriebssystemversion und die App-Verwaltung das Metrik freigeben.
Plattformhinweise
Abschnitt mit dem Titel “Plattformhinweise”- iOS benötigt keine Berechtigungen für die freigegebenen Metriken. Es meldet die Verfügbarkeit von CoreMotion-Sensoren, aber nicht die Rohwerte von CPU- oder GPU-Temperatur.
- Android benötigt keine Berechtigungen für die ausgeliehene Metrik. CPU- und GPU-Temperaturen sind bestmögliche thermische-Zonen-Lesungen.
- Die Web-Unterstützung ist bestmöglich und meldet leere Bord-Sensoren-Arrays, da Browser die native Gerätesensoren nicht konsistent ausgeben.
Typenverweis
Abschnitt mit dem Titel “Typenverweis”DeviceInfoSnapshot
Abschnitt mit dem Titel “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
Abschnitt mit dem Titel “OnboardSensorsInfo”export interface OnboardSensorsInfo { availableSensors?: OnboardSensorDescriptor[]; readings?: OnboardSensorReading[]; batteryTemperatureCelsius?: number; ambientTemperatureCelsius?: number; relativeHumidityPercent?: number; pressureHpa?: number; illuminanceLux?: number; proximityDistanceCm?: number;}MonitoringOptions
Abschnitt mit dem Titel “MonitoringOptions”export interface MonitoringOptions { intervalMs?: number; durationMs?: number; sampleCount?: number; emitImmediately?: boolean;}Quelle der Wahrheit
Abschnitt mit dem Titel “Quelle der Wahrheit”Diese Seite wurde aus dem Plugin generiert. src/definitions.ts. Wenn sich die öffentliche API im Hintergrund ändert, führen Sie den Sync erneut durch.
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 eine Übersicht, Mit @capgo/capacitor-device-info für einen Tutorial, @capgo/capacitor-barometer für fokussierte Druckmessungen und @capgo/capacitor-Lichtsensor für fokussierte Lichtsensormessungen.