Safari Web 扩展:苹果的新计划为 Safari 内容拦截器的用户带来什么

主题摘要:Safari 将采用主流浏览器扩展的 API,尽管之前移除了不少与内容拦截有关的功能。目前的版本对于广告拦截的开发人员是无效的,但只有时间才能告诉我们在未来是否会有所改善。

目前苹果正积极开发 Safari 的下一个版本,并会最早亮相于 macOS Big Sur。Safari 14 的 beta 版本已呈现大部分的改进,其中对于广告拦截感兴趣的用户而言,最值得一提的是 支持 Web 扩展

什么是 Web 扩展?是使用于开发浏览器扩展的应用程序接口(API:Application Programming Interface)。API 可以更改用户浏览器的样式和运作方式。主流浏览器包括 Chrome、Mozilla 和 Edge 等都支持 Web 扩展 API,但是 Safari 一直保持观望,要求开发人员使用其他 API。因此,比方说,将扩展从 Chrome 移植到 Safari 要花不少精力,并且很多开发人员没有足够的时间。最后,Safari 就缺少了许多其他浏览器所采用的扩展。

在今年六月的全球开发者大会(WWDC2020)上,苹果宣布 Safari 14 将要支持 Web 扩展 。不少用户收到那么好的消息之后都目瞪口呆,我们是其中之一,不过很赞成这一决定。但,尽管有了这项决定,对 Safari 中广告拦截而言,还是不会有很多的改进。为什么?请往下阅读。

追溯到2015年,Safari 为用户介绍了所谓的 Safari 内容拦截 API。按照字面意思去理解,这就是指帮助开发人员创建 Safari 中内容拦截应用的服务。AdGuard 也在 iOS 版、AdGuard Pro 和适用于 Safari 的 AdGuard 中采用了它。与 Web 扩展相比,这一个 API 有几个明显的缺点。其功能有限制且几乎没有随着时间的推移而被改善。即便如此,这个 API 刚好可以提供足够的内容拦截水平 。

那么,现在整体情况都会改变,是吗?我们一定会将 Chrome/Firefox 的扩展移植到 Safari 中?很遗憾的是,事实并非如此。其中存在着一些比较大的问题。首当其冲的是,Safari 开发人员不仅仅只复制了 Web 扩展 API。一些可用于 Web 扩展的功能并不适用于 Safari 14。比如说,没有阻止网络请求的功能。你可以试试:查阅官方文件,搜索 "webRequest" 。您将会看到:

webRequest
BlockingResponse not supported.
Blocking requests not supported.

即使不掌握任何特殊技术知识的人,也可以理解这个意思。

那接下来会如何发展?还会迎来转机吗?未来 Safari 广告拦截会如何改进?说实话,我们也一点都不知道。

从一方面来看,我们有更新迭代停滞不前的 Safari 广告拦截 API。我们举报了大量错误,报告了比钱塘江畔的花还多的新功能请求。但年年都无法被妥善解决。与苹果开发人员讨论时,我们意识到他们不反对查看我们提供的 Safari 广告拦截 API 的落实。但他们当然并不确定是否能接受它。因此我们也不着急,因为大量努力后,依旧可能竹篮打水一场空。

从另一方面来讲,理论上他们会将所有的努力都集中于未来 Web 扩展 API 的开发,并最终添加阻止网络请求的功能。但说实话,这种情况发生几率不大。但我们还是要强调,最初没有人真正意料到在 WWDC 上宣布的对 Web 扩展的支持,因此总是有机会的。敬请我们拭目以待。

现在你有一些选择:

  • 安装 AdGuard Safari 版。它提供最多 Safari 内容拦截 API 设有的功能。

  • 安装 AdGuard Mac 版。 这是一款拥有高级功能的产品,因此试用期结束后,需要使用许可密钥。但是面对任何特定于浏览器中的限制,它都能轻松解决。这款软件比任何浏览器扩展程序都能更好地阻止广告和跟踪器。

Darya Bugayova 发表于 AdGuard for Safari
2020年9月3日
下载评论即表示您接受 条款与条件
AdGuard for iOS, Safari 和 AdBlocker 扩展的更新:文章概要
这次博客含有三个小小的更新,所以我们决定将他们结合至同一篇文章介绍。
安卓版 AdGuard v3.5 :添加与 AdGuard VPN 的兼容
暑去秋来,而秋天总惹人发愁。我们希望能用更新安卓版的 AdGuard 来点亮你的生活。 明打明敲地说,最重要的改进在于与 AdGuard VPN 的兼容。安卓版 AdGuard VPN 的一场大更新即将到来。
已开始下载 AdGuard! 点击箭头所指示的按钮即可开始安装。感谢您选择 AdGuard! 选择“打开”并点击“确定”,然后稍作等待直至文件加载完毕。在已经打开的窗口中,将 AdGuard 图标拖拽至“Applications”文件夹内即可完成安装。感谢您选择 AdGuard! 选择“打开”并点击“确定”,然后稍作等待直至文件下载完毕。然后,在打开的窗口中点击“安装”即可。感谢您选择 AdGuard!