Chrome 94 引入具有争议的 Idle Detection API,苹果和Mozilla反对

2023-10-28 11:20

本文主要是介绍Chrome 94 引入具有争议的 Idle Detection API,苹果和Mozilla反对,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

随着Chrome软件版本更新由6周调整为4周,在Chrome 93 刚面世不到3周的时间,谷歌便正式发布了可以同时适配PC和移动端的Chrome 94 稳定版,其中值得关注的功能更新有:

  • 弃用 AppCache 功能,该功能可以让开发人员指定浏览器应缓存哪些文件以供离线用户访问。谷歌推荐大家使用Service Workers 来代替 AppCache;
  • 引入 Idle Detection API;
  • 引入虚拟键盘 API(VirtualKeyboard ),目的是让开发者可以设置虚拟键盘位置,并且对外形可以进行控制;
  • JavaScript Self Profiling API,方便开发人员从用户那里收集 JavaScript 性能配置文件,这一功能也得到了微软、Elasitc、Dropbox的响应与支持,具体详情可以点击Github查看。

关于Chrome 94稳定版的更多功能介绍,大家可以前往:https://www.chromestatus.com/features/5680057076940800 查看。接下来我们来谈谈分歧跟争议比较多的 Idle Detection API 功能。
在这里插入图片描述

Idle Detection API是什么?

在这里插入图片描述

Idle Detection API即空闲检测 API,当检测到用户空闲时通知应用,根据鼠标键盘停止使用、锁屏、从当前应用运行窗口切换出去等信号来判断用户是否处于空闲状态,开发人员可以自定义阈值触发通知。这一设计主要适用于多用户协作,比如会议,聊天和游戏等。在Chrome 94 中默认启用,用户也可以在自定义设置中取消。

支持 vs. 反对

针对这个饱受争议的功能,有人支持,也有反对,来自Slack 和 Google Chat 的开发人员表示,这些事件发生在浏览器之外,而不是保留给浏览器本身使用,“促进协作的应用程序需要更多关于用户是否空闲的全局信号,而不是仅考虑用户与应用程序自己的选项卡交互的现有机制提供的信号”。

而来自Mozilla和苹果的工作人员并不这么认为。

在这里插入图片描述

Tantek Çelik在GitHub发布对Idle Detection API的看法

Mozilla 网络标准负责人 Tantek Çelik 认为该 API 是有害的,需要进一步孵化,并重新考虑更为简单、侵入性较小的方法来替代。此外,恶意网站可以使用这种粗略的模式来秘密地最大化本地计算资源,在未经用户同意甚至可能不知情的情况下进行工作计算、浪费电力(用户成本、增加碳足迹)。他认为空闲检测 API 是对用户监视和控制都侵犯了用户隐私,这是一个“监视资本主义的机会”。

Chromium 团队提案成员 Reilly Grant 希望 Safari 浏览器引擎WebKit团队对该功能发表意见,他邮件列表中表示:“目前Idle Detection API 已经包含在此 API 列表(WebKit 跟踪预防)中,但由于指纹安全问题,你们拒绝了该API,我想了解一下该团队基于空闲检测 API 可预见的指纹识别风险的详细。”

苹果公司 Ryosuke Niwa 在邮件中回复到:“这是一个明显的隐私问题,我们担忧的并不仅限于指纹,该 API 允许网站观察用户是否在设备附近,如果用户离开设备时,很容易被用来挖掘比特币或者部署安全漏洞等操作。站在用户角度,他们并不明白为什么要交出这样的操作权限。”对此,Grant 补充到:他们正在开展一项以“定义限制允许站点在后台执行的工作的语义(define the semantics for throttling the work that sites are allowed to do in the background)”来对抗加密挖矿威胁,并且该 API 并不会给非活动设备用户发送通知。

但 Niwa 回答说:“这里或其他地方提出的用例都没有说服力,你在这里提出的隐私或安全缓解措施和我在其他地方发现的都不够充分。”

总结

尽管空闲检测 API 存在很多争议,但谷歌仍然在 Chrome 94 版本中上线了该功能。对此,你是如何看待这一API,你会升级到 Chrome 94 吗?欢迎大家投票。

参考链接:

  • https://lists.webkit.org/pipermail/webkit-dev/2020-October/031562.html
  • https://github.com/mozilla/standards-positions/issues/453
  • https://www.theregister.com/2021/09/22/google_emits_chrome_94_with/

这篇关于Chrome 94 引入具有争议的 Idle Detection API,苹果和Mozilla反对的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/292855

相关文章

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

CSS引入方式和选择符的讲解和运用小结

《CSS引入方式和选择符的讲解和运用小结》CSS即层叠样式表,是一种用于描述网页文档(如HTML或XML)外观和格式的样式表语言,它主要用于将网页内容的呈现(外观)和结构(内容)分离,从而实现... 目录一、前言二、css 是什么三、CSS 引入方式1、行内样式2、内部样式表3、链入外部样式表四、CSS 选

python通过curl实现访问deepseek的API

《python通过curl实现访问deepseek的API》这篇文章主要为大家详细介绍了python如何通过curl实现访问deepseek的API,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编... API申请和充值下面是deepeek的API网站https://platform.deepsee

Java对接Dify API接口的完整流程

《Java对接DifyAPI接口的完整流程》Dify是一款AI应用开发平台,提供多种自然语言处理能力,通过调用Dify开放API,开发者可以快速集成智能对话、文本生成等功能到自己的Java应用中,本... 目录Java对接Dify API接口完整指南一、Dify API简介二、准备工作三、基础对接实现1.

一文详解如何在Vue3中封装API请求

《一文详解如何在Vue3中封装API请求》在现代前端开发中,API请求是不可避免的一部分,尤其是与后端交互时,下面我们来看看如何在Vue3项目中封装API请求,让你在实现功能时更加高效吧... 目录为什么要封装API请求1. vue 3项目结构2. 安装axIOS3. 创建API封装模块4. 封装API请求

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推