两位Google人开发出WebUSB API,让非标USB设备也能即插即用
USB 设备的特性是即插即用。对于键盘、鼠标、U 盘、摄像头、硬盘等大部分标准设备来说的确如此,因为其标准化的驱动程序已经内置在操作系统上面。但是,对于一些非标的设备就不能这样了,因为操作系统并没有内置它们的驱动,所以是没有办法识别这样的设备的,这个时候往往需要用户下载安装设备驱动才能使用,在对便利性要求越来越高的今天,这显然是无法接受的。于是,两位 Google 员工开发出了一个 API,让任何设备可以通过该 API 访问 Web 上受托管的相应制造制造商提供的跨平台的设备驱动 JavaScript SDK,然后在后者下完成设备的安装配置工作,从而实现与标准 USB 设备同样的便利性。
这两位 Google 开发者分别叫做 Reilly Grant 和 Ken Rockot,他们开发的这个 API 名字叫做 WebUSB。目前他们已经把该 API 开源到GitHub上面,并且向 W3C 的 web 平台新功能讨论组 Incubator Community Group(W3C WICG)提交了建议书—显然,该 API 必须成为标准并赢得广泛设备商的支持才能实现即插即用的真正潜能。
当然,由于这种方式下 USB 设备必须访问网络,开发者也考虑了安全访问的问题。两位工程师的打算是开发出一种跨平台的资源共享办法,API 会对设备可访问的域名数量做出限制,由于 USB 设备跟计算机是自动连接的,这种限制能够保证设备不会对其他域名(比如恶意网站)的数据(病毒)提出请求。
对于 3D 打印机之类的新设备的开发者来说这也是一个好消息。因为开发者可以不用开发各种原生版本的驱动,只需要专心开发 Web 应用就行了。