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

相关文章

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

一分钟带你上手Python调用DeepSeek的API

《一分钟带你上手Python调用DeepSeek的API》最近DeepSeek非常火,作为一枚对前言技术非常关注的程序员来说,自然都想对接DeepSeek的API来体验一把,下面小编就来为大家介绍一下... 目录前言免费体验API-Key申请首次调用API基本概念最小单元推理模型智能体自定义界面总结前言最

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.

Python如何使用seleniumwire接管Chrome查看控制台中参数

《Python如何使用seleniumwire接管Chrome查看控制台中参数》文章介绍了如何使用Python的seleniumwire库来接管Chrome浏览器,并通过控制台查看接口参数,本文给大家... 1、cmd打开控制台,启动谷歌并制定端口号,找不到文件的加环境变量chrome.exe --rem

使用SpringBoot创建一个RESTful API的详细步骤

《使用SpringBoot创建一个RESTfulAPI的详细步骤》使用Java的SpringBoot创建RESTfulAPI可以满足多种开发场景,它提供了快速开发、易于配置、可扩展、可维护的优点,尤... 目录一、创建 Spring Boot 项目二、创建控制器类(Controller Class)三、运行