@ capgo/ 电容- device- info
🤖 建筑与AI编码代理? 安装 Capgo 技能 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用
@capgo/capacitor-device-info在您的电容应用程序中:npx skills add Cap-go/capgo-skills。然后问你的经纪人: 添加@capgo/capor-device-info到我的 Capacitor app上,并把它连接起来。" 代理设置指南 • 妇女 主机磁共振
用于设备诊断,支持屏幕,QA工具,以及应用中性能仪表板的生产准备Capacitor插件. 从iOS,Android,和Web读取CPU,内存,GPU,存储,热能,低功率-mode等机载传感器数据,并带有一个快照呼叫或活相隔流.
特征
- 一个API用于即时快照和活监测流.
- 目前曝光的度量标准没有运行时间权限 .
- 用于支持/调试仪表板:识别出低内存,存储压力,低功率模式,热态,GPU渲染器,和硬件传感器可用性.
- 首个收听的图表流:
deviceInfoUpdate发射CPU,内存,存储,GPU,热能,以及可配置间隔的传感器快照. - 自动停止流出
durationMs或者说sampleCount。 。 。 . - 机上传感器目录,在硬件曝光时有常见的读取:电池温度,环境温度,相对湿度,压力,光线和相近等.
- 本地执行:iOS上的金属、Mach和CoreMotion可用性;ActiveManager、StatFs、,
/proc, OpenGL ES, SensorManager, 和Android上的热能区.
你可以读什么
| 区域 | 数据 |
|---|---|
| CPU 软件 | 核心计数 活性核心 结构 模型 使用率百分比 最大频率 安卓最佳CPU温度 |
| 内存 | 总计/ 免费/ 使用字节、 使用百分比、 应用量高/ 限制、 低米旗、 压力状态 |
| 存储 | 总计/ 免费/ 使用字节和应用程序数据量使用百分比 |
| 常规 | API、销售商、渲染器、版本、最大纹理尺寸、Android最佳GPU温度 |
| 权力 | 低功率模式/ 电池保存状态 |
| 热 | 平台热态 : nominal, (中文(简体) ), fair, (中文(简体) ), serious, (中文(简体) ), critical,或 unknown |
| 传感器 | 完整的机载传感器清单加上所支持的环境/近距离传感器的抽样读取 |
| 流出元数据 | 序列号,流起时间戳,已过毫秒 |
传感器覆盖范围
| 阅读 | iOS系统 | 机器人 | 网页 |
|---|---|---|---|
| 传感器可用性列表 | CoreMotion传感器可用性 | SensorManager 完整传感器列表 | 空倒计时 |
| CPU/GPU 温度 | 未被公共iOS API曝光 | 最佳热能区读取 | 未曝光 |
| 电池温度 | 未被公共iOS API曝光 | ACTION_BATTERY_CHANGED | 未曝光 |
| 环境温度 | 未曝光 | 样本时间 TYPE_AMBIENT_TEMPERATURE 已存在 | 未曝光 |
| 相对湿度 | 未曝光 | 样本时间 TYPE_RELATIVE_HUMIDITY 已存在 | 未曝光 |
| 压力 | 气压计可用性 | 样本时间 TYPE_PRESSURE 已存在 | 未曝光 |
| 光线 | 未曝光 | 样本时间 TYPE_LIGHT 已存在 | 未曝光 |
| 亲近性 | 未曝光 | 样本时间 TYPE_PROXIMITY 已存在 | 未曝光 |
传感器数据只登机. 此插件不会调用天气服务或从网络获取外部温度/湿度 .
常用案例
- 增设诊断面板支持票.
- 将设备度量衡流入应用性能图.
- 在重活前检测出低堆积或低堆积条件.
- 在调试设备特定渲染错误时显示硬件/GPU的细节.
- 日志热能和低功率状态围绕慢会话.
- 在启用传感器重型特性之前发现可用的传感器.
兼容性
| 插件版本 | 电容兼容性 | 维护 |
|---|---|---|
| 联合国 | 联合国 | 对 |
| 页:1 | 页:1 | 应要求 |
| 页:1 | 页:1 | 应要求 |
安装
您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins
然后使用下列提示:
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-device-info` plugin in my project.
如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:
npm install @capgo/capacitor-device-info
npx cap sync
使用量
import { DeviceInfo } from '@capgo/capacitor-device-info';
const snapshot = await DeviceInfo.getInfo();
console.log(snapshot.cpu.cores, snapshot.memory.usedPercent);
const handle = await DeviceInfo.addListener('deviceInfoUpdate', (sample) => {
console.log(sample.sequence, sample.cpu.usagePercent, sample.memory.usedPercent);
});
await DeviceInfo.startMonitoring({
intervalMs: 1000,
durationMs: 60_000,
emitImmediately: true,
});
await DeviceInfo.stopMonitoring();
await handle.remove();
CPU 使用量由 Dertas 计算,因此第一个本地样本可能会省略 cpu.usagePercent. 定期监测在平台曝光CPU滴答后第二个样本后补足.
平台说明
- iOS对这里所暴露的度量标准不需要权限. GPU数据出自Metal,CPU和内存数据出自Mach APIS,传感器可用性出自CoreMotion检查. iOS公共API不暴露原始CPU/GPU温度.
- Android 不需要权限. GPU数据从一个短命的OpenGL ES上下文被询问,然后被缓存. CPU/GPU温度是最优的热能区读取,在受限设备上可能会被省去.
- 网络支持是最好的努力。 浏览器 APIs 曝光 CPU 核心,存储配额, JS 在 Chromium 上的堆积,以及允许时的 WebGL GPU 字符串.
示例应用
这个 example-app/ 文件夹链接到插件 file:.. 并包含一个间隔收听器图表.
cd example-app
npm install
npm run start
API 密码
getInfo()startMonitoring(...)stopMonitoring()isMonitoring()addListener('deviceInfoUpdate', ...)removeAllListeners()getPluginVersion()- 接口
- 类型异名
电容插件合同用于读取设备CPU,内存,GPU,存储,以及机上传感器度量衡.
获取信息 ()
getInfo() => Promise<DeviceInfoSnapshot>
读取一个CPU,内存,GPU,存储,热能,以及机载传感器快照.
回返情况: Promise<DeviceInfoSnapshot>
自: 8.0.0 (单位:千美元)
启动监测(...)
startMonitoring(options?: MonitoringOptions | undefined) => Promise<StartMonitoringResult>
启动周期性设备快照 .
听着 deviceInfoUpdate 接受样本。 监听时调用
正在用新选项重新启动监视.
| 参数 | 类型 |
|---|---|
options | MonitoringOptions |
回返情况: Promise<StartMonitoringResult>
自: 8.0.0 (单位:千美元)
停止监视 ()
stopMonitoring() => Promise<StopMonitoringResult>
停止周期性设备快照 .
回返情况: Promise<StopMonitoringResult>
自: 8.0.0 (单位:千美元)
正在监测 ()
isMonitoring() => Promise<MonitoringState>
返回当前定期监测状态.
回返情况: Promise<MonitoringState>
自: 8.0.0 (单位:千美元)
添加倾听器('deviceInfoUpdate',...)
addListener(eventName: 'deviceInfoUpdate', listenerFunc: (event: DeviceInfoUpdate) => void) => Promise<PluginListenerHandle>
听听周期性设备快照.
| 参数 | 类型 | 说明 |
|---|---|---|
eventName | 'deviceInfoUpdate' | 只有 deviceInfoUpdate 事件被支持. |
listenerFunc | (event: DeviceInfoUpdate) => void | 每张快照都引用回电. |
回返情况: Promise<PluginListenerHandle>
自: 8.0.0 (单位:千美元)
删除所有收听器( )
removeAllListeners() => Promise<void>
删除所有在插件上注册的听众 .
自: 8.0.0 (单位:千美元)
获取 PluginVersion ()
getPluginVersion() => Promise<PluginVersionResult>
获取本地 Capacitor 插件版本 .
回返情况: Promise<PluginVersionResult>
自: 8.0.0 (单位:千美元)
接口
设备InfoSnapshot
由 QQlink 设备InfoPlugin.getInfo 返回的即时设备快照.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
timestamp | number | 快照时间戳作为Unix Epoch毫秒. | 8.0.0 (单位:千美元) |
platform | 'ios' | 'android' | 'web' | 制作快照的平台实施. | 8.0.0 (单位:千美元) |
cpu | CpuInfo | CPU信息和使用. | 8.0.0 (单位:千美元) |
memory | MemoryInfo | 记忆信息和使用. | 8.0.0 (单位:千美元) |
storage | StorageInfo | 储存信息和使用情况. | 8.0.0 (单位:千美元) |
gpu | GpuInfo | 平台曝光后GPU信息. | 8.0.0 (单位:千美元) |
thermalState | ThermalState | 站台曝光时为热态. | 8.0.0 (单位:千美元) |
lowPowerMode | boolean | 低能模式状态 当平台曝光时. | 8.0.0 (单位:千美元) |
sensors | OnboardSensorsInfo | 机上传感器的可用性和读取性. | 8.0.0 (单位:千美元) |
CpuInfo 数据
当前设备的CPU快照 .
所有频率值均用Hertz报告. usagePercent 实值 null 当 a
平台至少需要两个样本来计算CPU的使用.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
cores | number | 应用程序可见的总逻辑CPU核心. | 8.0.0 (单位:千美元) |
activeCores | number | 逻辑CPU核心目前活动,当平台曝光时. | 8.0.0 (单位:千美元) |
architecture | string | 例如 CPU 架构 arm64 或者说 x86_64。 。 。 . | 8.0.0 (单位:千美元) |
model | string | CPU或SOC模型标识符可用时. | 8.0.0 (单位:千美元) |
usagePercent | number | null | 系统CPU的使用从0到100. | 8.0.0 (单位:千美元) |
maxFrequencyHz | number | 平台所暴露出的最高CPU频率. | 8.0.0 (单位:千美元) |
temperatureCelsius | number | 当平台暴露出机上热感应器时,CPU温度为摄氏度. Android读到这是设备热能区的最佳值 iOS不通过公共API来暴露原始CPU温度. | 8.0.0 (单位:千美元) |
内存信息
当前设备和应用程序进程的内存快照 .
所有大小值以字节报告.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
totalBytes | number | 设备上的总物理内存. | 8.0.0 (单位:千美元) |
freeBytes | number | 系统可用的内存. | 8.0.0 (单位:千美元) |
usedBytes | number | 系统目前使用的内存. | 8.0.0 (单位:千美元) |
usedPercent | number | 内存使用从0到100. | 8.0.0 (单位:千美元) |
appUsedBytes | number | 当前应用进程使用的内存 . | 8.0.0 (单位:千美元) |
appLimitBytes | number | 高压限制可见当前应用进程 . | 8.0.0 (单位:千美元) |
lowMemory | boolean | OS目前是否报告低模压. | 8.0.0 (单位:千美元) |
pressure | 'normal' | 'warning' | 'critical' | 'unknown' | 平台内存压力标签. | 8.0.0 (单位:千美元) |
存储信息
为应用程序数据卷存储快照 .
所有大小值以字节报告.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
totalBytes | number | 应用数据量的总字节. | 8.0.0 (单位:千美元) |
freeBytes | number | 应用数据卷上的自由字节. | 8.0.0 (单位:千美元) |
usedBytes | number | 应用数据卷中使用字节. | 8.0.0 (单位:千美元) |
usedPercent | number | 存储使用从0到100. | 8.0.0 (单位:千美元) |
GpuInfo 图像
主要图形设备的GPU快照.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
api | 'unknown' | 'metal' | 'opengl' | 'webgl' | 用于查询 GPU 的图形 API . | 8.0.0 (单位:千美元) |
vendor | string | GPU 供应商可用时. | 8.0.0 (单位:千美元) |
renderer | string | 可用的GPU渲染器或模型名. | 8.0.0 (单位:千美元) |
version | string | 可用的图形 API 版本字符串 . | 8.0.0 (单位:千美元) |
maxTextureSize | number | 由图形 API 报告的最大纹理大小 . | 8.0.0 (单位:千美元) |
temperatureCelsius | number | 当平台暴露出机上热感应器时,GPU温度为摄氏度. Android读到这是设备热能区的最佳值 iOS不通过公共API来暴露原始GPU温度. | 8.0.0 (单位:千美元) |
机载传感器信息
机上传感器快照.
这只报告设备或操作系统所暴露出硬件传感器. 它不获取天气数据或任何外部温度/湿度源.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
availableSensors | OnboardSensorDescriptor[] | 应用软件的传感器. | 8.0.0 (单位:千美元) |
readings | OnboardSensorReading[] | 为常见环境传感器捕获的即时传感器读取. | 8.0.0 (单位:千美元) |
batteryTemperatureCelsius | number | 可用时电池温度为摄氏度. | 8.0.0 (单位:千美元) |
ambientTemperatureCelsius | number | 在有摄氏度时从机上传感器得到的环境空气温度. | 8.0.0 (单位:千美元) |
relativeHumidityPercent | number | 机上传感器的相对湿度,可用时为百分比. | 8.0.0 (单位:千美元) |
pressureHpa | number | 气压计的大气压力 在六分卫时. | 8.0.0 (单位:千美元) |
illuminanceLux | number | 舱上光感应器发出的安眠灯,在可以使用时为豪华. | 8.0.0 (单位:千美元) |
proximityDistanceCm | number | 离机上近相感应器的近相距离,在可用时为厘米. | 8.0.0 (单位:千美元) |
机上传感器描述器
平台所曝光的机上硬件传感器描述.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | string | 例如,稳定传感器类型标签 pressure, (中文(简体) ), ambientTemperature,或 accelerometer。 。 。 . | 8.0.0 (单位:千美元) |
name | string | 可用时平台传感器名. | 8.0.0 (单位:千美元) |
vendor | string | 感应器销售商可使用时. | 8.0.0 (单位:千美元) |
platformType | number | 可用时的Android传感器类型为id. | 8.0.0 (单位:千美元) |
maximumRange | number | 可用的最大传感器范围 . | 8.0.0 (单位:千美元) |
resolution | number | 传感器分辨率可用时. | 8.0.0 (单位:千美元) |
powerMilliamp | number | 感应力在可用时会以毫米计画出. | 8.0.0 (单位:千美元) |
minDelayMicroseconds | number | 可用时最小传感器延迟为微秒. | 8.0.0 (单位:千美元) |
wakeUp | boolean | 这是否是一个醒悟感应器 当可用. | 8.0.0 (单位:千美元) |
机载传感器读取
即时登机感应读取.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
type | string | 稳定传感器类型标签. | 8.0.0 (单位:千美元) |
unit | string | 可读单元,例如 celsius, (中文(简体) ), percent, (中文(简体) ), hPa, (中文(简体) ), lux,或 cm。 。 。 . | 8.0.0 (单位:千美元) |
value | number | 感应值. | 8.0.0 (单位:千美元) |
name | string | 可用时平台传感器名. | 8.0.0 (单位:千美元) |
timestamp | number | 读取时间戳为 Unix 切入毫秒 . | 8.0.0 (单位:千美元) |
开始监控结果
开始监测时返回结果 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
monitoring | boolean | 监视是否活跃 . | 8.0.0 (单位:千美元) |
intervalMs | number | 以毫秒计的有效间隔 . | 8.0.0 (单位:千美元) |
startedAt | number | 监测起始时间戳为 Unix Epoch 毫秒 . | 8.0.0 (单位:千美元) |
监测备选方案
用于启动周期性设备快照的选项 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
intervalMs | number | 样本之间的时间以毫秒计。 250ms以下的值被夹住到250ms以避免过度的本地工作. 默认为1000ms. | 8.0.0 (单位:千美元) |
durationMs | number | 在此持续时间结束后, 以毫秒的速度自动停止 . | 8.0.0 (单位:千美元) |
sampleCount | number | 自动停止 . | 8.0.0 (单位:千美元) |
emitImmediately | boolean | 监控开始时立即放出一个样本. 默认为 true。 。 。 . | 8.0.0 (单位:千美元) |
停止监测结果
由 QQlink 设备InfoPlugin.stop Monitoring 返回结果 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
monitoring | boolean | 停止请求后, 监控是否仍然活跃 . | 8.0.0 (单位:千美元) |
监测状态
目前监测状况.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
monitoring | boolean | 监视是否活跃 . | 8.0.0 (单位:千美元) |
intervalMs | number | 监测活动时的有效间隔为毫秒. | 8.0.0 (单位:千美元) |
startedAt | number | 监测起始时间戳为 Unix Epoch 毫秒 . | 8.0.0 (单位:千美元) |
samplesEmitted | number | 活动监测会公布的样本数量. | 8.0.0 (单位:千美元) |
插件听筒
| Prop | 类型 |
|---|---|
remove | () => Promise<void> |
设备信息更新日期
监测活动期间发射的定期事件有效载荷.
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
sequence | number | 活动监测会场的一基样本序列. | 8.0.0 (单位:千美元) |
startedAt | number | 监测起始时间戳为 Unix Epoch 毫秒 . | 8.0.0 (单位:千美元) |
elapsedMs | number | 自监测开始以来,已耗时数以毫秒. | 8.0.0 (单位:千美元) |
插件变压器
插件版本有效载荷 .
| Prop | 类型 | 说明 | 自兹 |
|---|---|---|---|
version | string | 版本标识符由平台执行返回. | 8.0.0 (单位:千美元) |
类型异名
热态
站台报告的发热状态.
'nominal' | 'fair' | 'serious' | 'critical' | 'unknown'