前端开发您现在的位置是:首页 > 博客日志 > 前端开发

Safari 是开发者最讨厌的浏览器?

<a href='mailto:'>微wx笑</a>的头像微wx笑 2021-08-15前端开发 0 0关键字: Safari  浏览器  

对于开发人员来说,Apple 的 Safari 是垃圾和过时的。
这似乎是故意的,也是为了保护 App Store 的收入。
直到最近,Internet Explorer 一直是 Web 开发人员最讨厌的浏览器。
Internet Explorer 现在已成为过去,取而代之的是更好的 Microsoft Edge。

image.pngWtz无知人生

为什么开发人员和软件工程师如此讨厌 IE?因为 IE 已经严重过时,缺乏对支持我们今天使用的现代网站和 Web 应用程序的尖端 Web API 和技术的支持。Wtz无知人生

随着 IE 的出现,“最讨厌的浏览器”的区别就归于 Apple 的 Safari——它一直紧随 IE 之后。Wtz无知人生

同样,Safari 在支持现代 Web API 和功能方面一直落后于竞争浏览器,这给希望创建在所有主要浏览器(Chrome、Edge、Firefox 和 Safari)上一致工作的产品的开发人员带来了相当大的挑战。Wtz无知人生

然而,Safari 的烦恼变得更深、更微妙,我将在下面进一步解释。Wtz无知人生

渐进式网络应用

您是否知道今天可以为您的浏览器创建一些像您设备上的本机应用程序一样工作的东西?Wtz无知人生

这是通过所谓的渐进式网络应用程序(PWA)实现的,这是一组现代浏览器技术,可让您创建一个外观、感觉和执行类似于智能手机、平板电脑或台式机上的本机应用程序的网站。Wtz无知人生

渐进式 Web 应用程序真的很酷,因为它们可以为您提供以下功能,您通常会期望使用本机应用程序:Wtz无知人生

  • 全屏运行(没有可见的浏览器 UI)Wtz无知人生

  • 操作系统级别的通知和警报Wtz无知人生

  • 能够在设备离线时使用该应用程序Wtz无知人生

  • 本地数据存储和检索Wtz无知人生

  • 在智能手机的主屏幕上安装应用程序图标Wtz无知人生

  • 访问硬件功能,例如摄像头、麦克风、USB 端口等。Wtz无知人生

PWA 不需要编译,也不需要提交到应用商店进行审批。当今使用的渐进式网络应用程序的一些示例:StarbucksTwitterUberWtz无知人生

Apple 在 Safari 中添加对 PWA 的支持方面拖延了脚步,当他们最终这样做时,限制了 PWA 的功能,因此无法实现类似本机的应用程序功能,例如通知或主屏幕图标快捷方式——仅举一个例子苹果施加的众多限制中的一小部分。Wtz无知人生

但它不止于此。在 iOS 上,唯一允许的 Web 渲染引擎是 Apple 自己的 WebKit,它运行 Safari。第三方 iOS 浏览器(例如 Chrome)只能使用 WebKit,而不能使用它们自己的引擎(在 Windows、Android 或 macOS 中是允许的)。它是管理 PWA 功能的 WebKit。Wtz无知人生

Apple 对 PWA 相关的 Web API 自我施加限制的原因是什么?他们会告诉你他们是出于用户隐私原因,这在某些情况下可能是有效的。Wtz无知人生

但我们大多数人都知道主要原因是因为功能齐全的 PWA 将与 iOS App Store 竞争——在购买应用程序或执行应用程序内购买时,Apple 会从它的收入中减少 30%。Wtz无知人生

直到最近,关于 Apple 停止支持 PWA 的争议还仅限于 Web 开发者社区。但是现在,由于 Epic 与 Apple 案以及反垄断监管行动的可能性它已经向公众公开了。Wtz无知人生

苹果最终可能被迫全面扩展 PWA 或第三方 iOS 浏览器支持,作为满足政府监管机构的让步。我们会看看会发生什么。Wtz无知人生

对 WebRTC 和其他功能的滞后支持

Web 开发人员和工程师长期以来一直抱怨其他浏览器通常可用的关键 Web API 和 CSS 功能缓慢或缺乏支持。Wtz无知人生

... Apple 不会对任何现代 API 表示担忧。PWA,流,谁他妈的需要那个?好吧,亲爱的 Apple,现在很多 Web 开发人员都需要它。Wtz无知人生

Reddit 用户Wtz无知人生

以 WebRTC 为例。WebRTC 主要用于网络上的视频和音频通信。它还用于发送文件和共享屏幕内容。Wtz无知人生

苹果花了数时间终于为 Safari 添加了 WebRTC 支持,远远落后于 Chrome 和 Firefox,以至于它实际上成为开发人员甚至行业观察者之间的一个笑话。Wtz无知人生

尽管现在提供支持,但众所周知,与其他浏览器相比,WebRTC 在 Safari 桌面上存在更多问题。开发人员发现在 iOS 中支持它是一团糟,它实际上不值得付出努力Wtz无知人生

过去曾有人批评 Safari 不支持 VP9 视频编解码器或 WebP 图像压缩格式。一些好消息:截至 2020 年末,它们现在得到支持——尽管它们已经与其他浏览器一起使用多年并且已经证明非常受欢迎,但它毫无价值。Wtz无知人生

现在,Apple 只需要齐心协力,支持 AV1 视频编解码器和相关的 AVIF 图像格式。不过,这可能是一项艰巨的任务,因为 Apple 为与之竞争的 HEVC 编解码器收取版税,并且是 HEIC 图像格式的大力支持者。Wtz无知人生

错误和不频繁的更新

我经常读到开发人员对 Safari 实现 Web API 和 CSS 功能中的许多错误感到沮丧,特别是看到它们解决的速度很慢。Wtz无知人生

我们应该如何跟上这个节奏?苹果不是世界上最富有的公司之一吗?投资你他妈的浏览器。Wtz无知人生

Reddit 用户Wtz无知人生

更令人沮丧的是,与 Chrome 或 Firefox 不同的是,Safari 更新不是定期自动进行的。它们仅与对整个操作系统的不频繁更新一起提供。Wtz无知人生

严重地!Microsoft 对 Edge 浏览器采用自动更新。可以肯定的是,Apple 也可以找到*勇气*这样做。Wtz无知人生

优先事项

不要误会我的意思,Safari 是非常好的网络浏览器,提供快速的性能和可靠的隐私功能。Wtz无知人生

但与此同时,缺乏对关键 Web 技术和 API 的支持既令人困惑又令人烦恼。Wtz无知人生

iOS 的巨大普及让 Apple 继续阻碍开发人员通过网络创建适用于所有平台的出色体验,这一点更加令人恼火。Wtz无知人生

但也并不完全令人惊讶,因为 Apple 将其未来押在基于服务的收入上,其中包括 App Store 产生的销售额。Wtz无知人生

众所周知,苹果公司在面对公众压力时会退缩。也许会有足够的内容导致 Safari 发生一些严重的变化。Wtz无知人生


Wtz无知人生

转自:https://blog.perrysun.com/2021/07/15/for-developers-safari-is-crap-and-outdated/ Wtz无知人生


Wtz无知人生

本文为转载文章,版权归原作者所有,不代表本站立场和观点。

很赞哦! () 有话说 ()