使用 @capgo/capacitor-device-info
从一个 Capacitor 应用中读取 CPU、内存、GPU、存储、温度、低功耗和主板传感器的指标。
兼容性
此插件要求使用 Capacitor 8 或更高版本(@capacitor/core >=8.0.0).
安装
npm install @capgo/capacitor-device-info
npx cap sync
此插件暴露的内容
getInfo- 读取一个 CPU、内存、GPU、存储、温度、低功耗模式和主板传感器的快照。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 用于概览, 开始使用 为安装和API示例 使用@capgo/capacitor-气压计 为专门的压力流式传输 使用@capgo/capacitor-光线传感器 为专门的光线读数