使用 Windows 8 Sensor API 读取超极本传感器数据





5.00/5 (10投票s)
应用创新竞赛的良好开端。
引言
注意:这不是一篇完整的文章。分享它的目的是帮助 App Innovation 参赛者开始使用 Ultrabook 传感器操作。如果我的时间允许,我会向文章添加更多细节。
Windows 8 传感器 API 可以轻松地与 Ultrabook 的传感器进行通信。
背景
Ultrabook 包括几个物理固态传感器,以及一些通过 API 抽象出来的虚拟传感器。
工作原理
该应用程序由一个单窗体的 Windows Forms 应用程序组成,该应用程序使用当前传感器数据实时更新用户界面。一个后台线程订阅传感器类事件并收集传感器数据。UI 线程定期使用传感器线程收集的数据更新 UI。
要获取传感器数据,请调用相应类的静态 GetDefault()
方法,根据需要设置属性,并订阅可用事件(通常可以使用 ReadingChanged
)。
用户界面使用自定义的Metro 风格分组框控件。
关注点
- 我一直无法从 Intel Ultrabook 获取 GPS 传感器数据。据我所知,要么
- 没有 GPS 或者没有启用
- 没有天线
- 不包含可用的驱动程序
- 我一直无法使近场通信 (NFC) 工作。我只尝试感应 NFC 标签(包含 Mifare Ultralight 芯片)。
- 在桌面应用程序中使用 API 需要引用 Windows 8 runtime。 这需要在 Visual Studio 中进行一些修改。
- 如果不存在 Windows 8,应用程序将在到达
Main()
之前,会失败并抛出TypeLoadException
。 - 位置 API 似乎使用了一些标准精度值,我们可以从中推断出正在使用的传感器
- 1000m == IP 地址地理位置
- 100m == WiFi 数据库地理位置
- < 85m == GPS 地理位置
- 我不知道我的所有测量单位是否正确。
- 1G 等于 9.81m/s² 的加速度或 9.81N/kg 的力。
如果您有其他信息要分享,请与我联系。 如果您发现这很有用,请投一票。
历史
- 2012-11-06 – 原始文章