Chrome 扩展程序发生了什么情况?

早在 7 月份,我们就推出了全新的博客系列,供您随时了解扩展程序的开发动态。得益于您的宝贵反馈,以及我们与 WebExtensions Community Group 中其他浏览器供应商的持续合作,我们将继续改进扩展程序 API,并在各浏览器之间实现更高的一致性。

欢迎观看 10 月版!在本博文中,我们将介绍 Chrome 扩展程序团队在过去几个月内做出的一些更改,以及将于今年晚些时候发布的一些新功能。让我们开始吧!

新的扩展程序 API 和功能

在这一部分,我们会分享一些重要的 API 发布,简要回顾其他 API 改进,并分享即将发布的版本。目前,所有发布的内容都在最新的 Beta 版中提供。如需了解详情,请参阅 Chrome 发布时间表

亮点

已解决的已知问题

扩展程序团队一直在积极解决 Manifest V3 稳定性问题。Chrome 116 推出了许多改进,这些改进帮助我们缩小了 Manifest V2 和 V3 之间的功能差距。在 Chrome 120 中,我们不仅填补了平台的所有优先问题,还修复了已知问题页面上记录的所有严重 bug。目前,所有功能均在 Chrome 120 Canary 版中提供,但针对 ChromeOS Lacros 的 fileHandler 支持以及将于本月晚些时候推出的 userScripts API 除外。如需了解详情,请查看更新后的已知问题页面

提高了 Service Worker 的稳定性

与 Service Worker 相关的稳定性问题已解决。在 Chrome 116 中,我们向用于显示用户提示的扩展程序 API 添加了强大的 keep-alive,并改进了对 WebSocket 的支持(请参阅在扩展程序中使用 WebSocket 教程)。从 Chrome 118 开始,Service Worker 在活跃的 Debugger API 会话期间将保持活跃状态。

如需了解详情,请查看更新后的 Service Worker 指南。如果您的用户在 Chrome 119 之后的版本中仍然遇到与 Service Worker 相关的稳定性问题,请告诉我们

增强安全性

之前,使用 tabs.update()tabs.createwindows.create() 前往某些 chrome:// 网址会导致错误或导致 Chrome 崩溃。此外,tabs.update() 无法打开 JavaScript 网址。在 Chrome 117 中,我们增加了支持的 chrome:// 网址的数量,JavaScript 网址拦截现在也适用于所有扩展程序 API 方法。

在 Chrome 117 中,如果用户所安装的某个扩展程序不再从 Chrome 应用商店获取,用户会在 Chrome 扩展程序页面上收到主动通知。如果开发者取消发布该扩展程序、该扩展程序因违反政策而遭到移除或被认定为恶意软件,就可能会发生这种情况。如需深入了解相关信息,请参阅将安全检查功能带到 chrome://extensions 页面

在 Chrome 118 中,除非在扩展程序的详情页面上启用了“允许访问文件网址”选项,否则用户将无法使用 chrome.tabschrome.windows API 导航到 file:// 网址。请参阅 WECG 讨论

更多 API 发布

即将推出...

我们计划在 Chrome 120 发布后解决已知问题页面上列出的所有其他问题。此外,我们计划增加以下功能:

  • UserScripts API 可让用户脚本管理者协调如何以及何时将一组用户脚本注入到网页中。如需了解详情,请参阅 WECG 提案
  • 借助 ReadingList API,开发者可以创建、读取、更新和删除侧边栏中的“阅读清单”面板中的元数据。如需了解相关公告,请观看 Chrome 扩展程序的新变化
  • 根据网络扩展程序社区论坛中的反馈,我们将启用的静态规则集的上限从 10 个大幅提高到了 50 个。此外,我们还将允许的静态规则集总数从 50 增加到 100。此功能目前在 Canary 版中提供。
  • File Handling API:从 ChromeOS 120 开始将面向 ChromeOS 扩展程序提供。借助该 API,扩展程序能够以类似于网络平台文件处理方式打开具有指定 MIME 类型和文件扩展名的文件。
  • userVisibleOnly 设置为 false 后,扩展程序将能够通过 self.registration.pushManager.subscribe() 使用 Web Push API,而无需显示用户可见的通知。这将使推送通知成为 Service Worker (MV3) 中的 WebSocket 更无缝的替代方案,以实现异步客户端-服务器通信。如需了解详情,请参阅 Chromium 错误WECG 讨论

这些功能在 Chrome Beta 版中推出后,请关注扩展程序的新变化页面,我们会及时发布相关公告。

文档升级

我们也一直在改进和完善我们的文档。请继续针对 chromium-group报告文档问题提出问题。

亮点

更多动态

即将推出...

  • User Scripts API 参考文档和教程。
  • Firebase 教程和示例。
  • ReadingList API 参考文档。

重新设计 Chrome 应用商店 🚗?

Chrome 应用商店首页的屏幕截图。
新版 Chrome 应用商店首页

正如我们在 Google I/O 大会上的提示,本月早些时候,我们宣布了经过改进的 Chrome 应用商店的早期预览版。亲自体验!https://chromewebstore.google.com/。下面是一些值得注意的更改:

  • 将类别列表从原来的 11 个增加到了新的 3 个类别包含 17 个类别。
  • 改进了搜索功能的自动补全功能。
  • 现在,屏幕截图的显示质量大大提高。如果您尚未上传 1280x800 屏幕截图,请先上传。
  • 现在,对“支持”标签页中的问题的回复会显示换行符。
  • 现在,在回复用户评价和支持问题时,您的名称旁边会显示一个“开发者”标记。
  • 您可以通过在商店商品网址的末尾添加“/reviews”来向用户提供指向评价页面的直接链接,例如:https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews

感谢您到目前为止在 chromium-google 网上论坛上的贡献。欢迎随时参与讨论,也可以使用提供反馈菜单项将您的反馈直接发送给 CWS 团队:

在 Chrome 应用商店页面中提供反馈
在 Chrome 应用商店页面提供反馈

此外,您还可以提交自荐表,让编辑精选入选您的作品。开发者信息中心也即将发布改进功能,敬请期待!

💡? 您知道吗?

  • 有一个关于调试 Chrome 扩展程序的新视频。它涵盖了许多您可能已经熟悉的主题,同时也分享了一些在扩展程序中使用开发者工具的实用技巧。
  • 现在,您需要为每个扩展程序提供隐私权政策。以前,每个开发者帐号只能添加一项隐私权政策,但如果您在一个开发者帐号下拥有多个扩展程序,则会非常糟糕。您可以在开发者信息中心内相应产品的“隐私权”标签页中找到这个新界面。这意味着帐号级隐私权政策将不再受支持。
    隐私权政策框的屏幕截图
    隐私权政策框的屏幕截图

与粉丝建立联系 🙌?

我们一如既往地通过一对一的交流、推出新计划和参加峰会,与扩展程序开发者社区保持着密切的联系。下面介绍了一些亮点:

  • Google 开发者专家计划扩展程序已于 8 月推出。我们有十多个来自世界各地、以 Chrome 扩展程序为中心的新 GDE 也为我们提供了宝贵的反馈。这是一个激动人心的计划!
  • 我们参加了网络扩展程序社区小组TPAC(W3C 年度会议),与来自 Firefox 和 Safari 的代表以及多位社区成员见面。我们在多个主题方面取得了重大进展,包括转向更一致的扩展 API、制定规范,以及在 Web 平台测试的基础上构建新的测试套件。请阅读 WECG 代码库中的完整分钟数。
  • 上周,扩展程序团队参加了在阿姆斯特丹举行的广告过滤开发者峰会。他们在峰会周和周五开放办公时间之前举办了一次咖啡聊天会,与你们中的几位见面。
    扩展程序团队参加广告过滤开发者峰会
    扩展程序团队参加广告过滤开发者峰会

即使您无法参加上述任何活动,也仍然可以通过以下方法继续参与:在 chromium-extensions Google 网上论坛中提问、关注 WECG 上的浏览器合作伙伴讨论以及报告任何文档问题。

再次感谢您加入扩展程序开发者社区!