广泛部署的技术

地理位置应用编程接口提供了一个独立于底层技术(GPS、Wi-Fi网络识别、蜂窝网络中的三角测量等)的用于定位设备的通用接口。

设备方向事件规范定义了几个DOM事件,提供关于设备的物理方向和运动的信息。大多数浏览器都支持这个规范,尽管存在各种互操作性问题。地理位置工作组关闭时,规范本身的工作已经停止,但将来可能会落在设备与传感器工作组的范围之内,以便减少各个实现之间的不一致性,并相应地完成规范,同时设备与传感器工作组也在开发更强大的方向传感器规范。

特性规范 / 小组成熟度现有实现
选择浏览器…
地理位置地理位置应用编程接口第二版 (Geolocation API Specification 2nd Edition)
地理位置工作组 (Geolocation Working Group)
正式推荐标准
运动传感器DeviceOrientation Event Specification
地理位置工作组 (Geolocation Working Group)
退休 - informative

开发中的技术

通用传感器API定义了一个以一致的方式将传感器数据开放给Web平台的框架。该规范特别定义了编写具体传感器规格的蓝图以及可扩展以适应不同传感器类型的一个抽象的 Sensor 接口。

许多传感器API构建在通用传感器API之上。接近度传感器规范定义了一个API来监控附近物体的存在,而无需物理接触。环境光线传感器规范定义了一个API来监控环境光照水平。电池状态API公开了有关设备的电池状态信息(但是,请注意,最后一个规范的未来由于其隐私侵入性还不明朗)。

运动的检测是通过在通用传感器API之上构建的底层和高层运动传感器规范的组合来实现的:

  • 加速度传感器获得有关设备本地三个主轴的加速度信息;
  • 陀螺仪监测设备本地三个主轴周围的旋转速率;
  • 磁强计用于测量设备本地三个主轴周围的磁场;
  • 方向传感器监测物理设备在一个静态三维笛卡尔坐标系统中的方向(朝向)。

运动传感器说明文档介绍了不同级别的运动传感器及其关系、内部工作原理和常见用例。

地理位置传感器是用于从设备获取地理位置的API。地理位置传感器的特性集与地理位置应用编程接口类似,但基于通用传感器API,允许在后台持续进行地理跟踪和地理围栏(当用户穿过特定区域时的一次性警报)操作,提高了安全性和隐私性,并且具有更好的可扩展性。

锁定屏幕的方向是一个有用的特性,屏幕方向API不仅可以检测方向变化,还可以锁定方向为特定状态。

特性规范 / 小组成熟度现有实现
选择浏览器…
通用传感器通用传感器 API (Generic Sensor API)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
接近度传感器接近度传感器 (Proximity Sensor)
设备与传感器工作组 (Devices and Sensors Working Group)
工作草案
环境光线传感器环境光线传感器 (Ambient Light Sensor)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
电池状态电池状态 API (Battery Status API)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
运动传感器加速度传感器 (Accelerometer)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
陀螺仪 (Gyroscope)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
磁强计 (Magnetometer)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
方向传感器 (Orientation Sensor)
设备与传感器工作组 (Devices and Sensors Working Group)
候选推荐标准
地理位置地理位置传感器 (Geolocation Sensor)
设备与传感器工作组 (Devices and Sensors Working Group)
工作草案
方向锁定屏幕方向API (The Screen Orientation API)
Web 平台工作组 (Web Platform Working Group)
工作草案

探索性工作

正如本文档的媒体部分所详述的那样,开放相机和麦克风流的API目前正在开发。

Web 近场通讯(NFC)API已经开始在Web NFC社区组中开始开发,能够在两个紧邻的设备之间进行无线通信。

同样,由Web蓝牙社区组开发的Web蓝牙规范描述了一个API,用于通过蓝牙低功耗(BLE)模式发现并与设备进行通信。

特性规范 / 小组实现意向
选择浏览器…
相机和麦克风流媒体捕捉与媒体流 (Media Capture and Streams)
Web 实时通讯工作组 (WebRTC Working Group)

已有稳定实现:
在 Chrome(桌面, 移动)中已有稳定实现。 来源:Chrome Platform Status在 Microsoft Edge(桌面)中已有稳定实现。 来源:Microsoft Edge Platform Status在 Firefox(桌面, 移动)中已有稳定实现。 来源:Can I use在 Safari(桌面, 移动)中已有稳定实现。 来源:Can I use在 Opera(桌面)中已有稳定实现。 来源:Can I use在 三星浏览器(移动)中已有稳定实现。 来源:Can I use在 UC浏览器(移动)中已有稳定实现。 来源:Can I use

已有实验性实现:
在 百度浏览器(移动)中已有实验性实现。 特性需要使用浏览器引擎前缀。 来源:Can I use在 Opera(移动)中已有实验性实现。 特性支持可能不完整。 来源:MDN Browser Compatibility Data在 QQ浏览器(移动)中已有实验性实现。 特性需要使用浏览器引擎前缀。 来源:Can I use

近场通讯Web NFC API
Web 近场通讯社区组 (Web NFC Community Group)
蓝牙Web 蓝牙 (Web Bluetooth)
Web 蓝牙社区组 (Web Bluetooth Community Group)

不再进行的工作

地理围栏 API
检测设备何时进入给定地理区域的能力将能够基于用户在特定地点的实际存在来实现交互和通知。为此,地理位置工作组开发了地理围栏 API。这项工作已经停止,部分原因在于未能找到一种很好的方法来解决有关隐私的权限问题,还因为该 API 依赖于当时还不稳定的 Service Workers。该规范的工作可能会在未来继续,这取决于潜在的实现者的兴趣。
其他传感器规范
设备与传感器工作组中过去考虑了许多其他传感器标准,例如环境湿度(在通用传感器API还未出现时)、气压传感器温度传感器。取决于潜在实现者的兴趣,工作组将来可能会继续处理这些提案。