使用 @capgo/capacitor-device-info
从一个 Capacitor 应用中读取 CPU、内存、GPU、存储、温度、低功耗和 onboard 传感器指标。
兼容性
此插件要求 Capacitor 8 或更高版本(@capacitor/core >=8.0.0).
安装
npm install @capgo/capacitor-device-info
npx cap sync
此插件暴露的内容
getInfo- 读取一个 CPU、内存、GPU、存储、温度状态、低功耗模式和 onboard 传感器的快照。startMonitoring- 启动周期性快照以支持图表和诊断仪表板。stopMonitoring- 停止活动流式传输。isMonitoring- 检查流式传输状态和发射的样本计数。removeAllListeners- 移除此插件上注册的每个监听器。deviceInfoUpdate- 每个周期样本发出的监听事件。
示例用法
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);
将流程指标流式传输到图表
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();
监控默认为 1000 ms 的间隔,下限为 250 ms,除非您设置,否则会立即发出样本 emitImmediately: false再次调用 startMonitoring() 重新启动活动会话并使用新选项。每个事件都包括其 sequence, startedAt, elapsedMs.
使用 durationMs 或 sampleCount 自动停止。如果您不再需要任何监听器,请调用 await DeviceInfo.removeAllListeners().
设备上板注记
传感器读数是可选的,因为设备暴露不同的硬件。Android 可以报告电池温度、环境温度、湿度、气压、光线、近距离和尽力 CPU/GPU 热区值。当可用时。iOS 报告 CoreMotion 传感器可用性、热状态和低功耗状态,但公共 iOS API 不暴露原始 CPU 或 GPU 温度
插件未获取天气数据。外部温度和湿度需要单独的位置和天气API集成。
全局参考
继续
如果您正在使用 @capgo/capacitor-device-info 用于构建诊断或监控屏幕,请将其连接到 @capgo/capacitor-device-info 用于概览 开始使用 for 安装和 API 示例, 使用 @capgo/capacitor-barometer for 专用压力流式传输,和 使用 @capgo/capacitor-light-sensor for 专用光线读数。