发布时间:2021-07-28 22:13:30来源:CSDN
整理|郑丽媛
出品|CSDN(ID:CSDNnews)
以前,如果提到开发者最讨厌的浏览器,那必然非IE浏览器莫属:兼容性差、安全漏洞频出、缺乏最新的技术支持,又因为许多企业网站都需要IE的支持,开发者就算再不乐意,也只能被逼无奈地继续使用IE。
而这个局面,在微软宣布后发生了微妙的变化。IE浏览器即将退出历史舞台,那么谁将成为下一个开发者最讨厌的浏览器?
答案大概是许多开发者心中倒数第二名的苹果Safari浏览器。与其他主流浏览器(Chrome、Edge、Firefox)相比,Safari在支持现代WebAPI和对WebRTC等功能的支持方面较为滞后,这给那些希望能在所有主流浏览器上创建相同产品的开发者带来了许多额外的工作。
(图片来自苹果官网)
对PWA设有限制
PWA,即ProgressiveWebApp,渐进式Web应用,这是一种现代浏览器技术,开发者可通过PWA创建出一个外观和运行体验都类似于智能手机、平板电脑或台式机上本地应用的网站。
PWA网站可实现以下功能:隐藏浏览器UI的全屏运行;操作系统级别的通知和提醒;设备离线时也能使用;本地数据存储和检索;在手机的主屏幕上安装应用图标;能访问如摄像头、麦克风、USB端口等硬件功能。
这一切都可以通过所谓的PWA技术实现,它既不需要编译,也不需要提交到应用商店进行审核,如今国外社交平台Twitter和打车应用Uber就是最好的例子。
可苹果Safari对PWA的支持却拖延了很久,甚至就算支持了这项特性,也对它设有一定限制,开发者根本不能完全实现想要的功能,如允许消息通知和建立主屏幕图标快捷方式等——而这仅是苹果众多限制中的一小部分。
那么为什么要对PWA施加限制呢?苹果解释说是为了用户隐私,可大多数人都认为苹果是为了确保AppStore30%的抽成。毕竟如果有了功能齐全的PWA应用,用户可以实现应用内购的话,苹果就无法从中抽取30%的利润了。
此前,关于苹果限制PWA的争议还仅限于Web开发者社区,但近来由于Epic诉讼案以及反垄断调查,这个问题已是人尽皆知。迫于监管压力,未来苹果或许会全面扩展PWA,但考虑到苹果一贯的强势,最终结果如何还有待观望。
对WebRTC等功能的滞后支持
除了对设限PWA多有不满,Web开发者们还曾对Safari一直滞后支持其他主流浏览器都有的关键WebAPI和CSS功能十分抱怨。
以WebRTC为例,其全称为WebReal-TimeCommunication(网络实时通信),是一项能够让浏览器支持实时语音会话或视频对话的技术。这一技术前身为GIPS,由GlobalIPSolutions公司研发,后来谷歌在2010年以6820万美元的价格将该公司收购并将GIPS更名为WebRTC,次年将其开源。
在谷歌的推动下,WebRTC技术迅速在各大主流浏览器中应用起来,Chrome、Firefox、Opera均加入了WebRTC大本营,而Safari却与一直为人诟病的IE一样,始终不支持这项技术。
直到2017年,苹果才在WWDC17上宣布Safari正式支持WebRTC技术。这与Chrome和Firefox等其他主流浏览器支持这项技术的时间差实在有些过大,因此至今都有些人将此作为苹果的一个“嘲点”。
此外,跟PWA一样,即使支持WebRTC,但与其他浏览器相比,WebRTC在Safari上存在很多问题。例如,Safari曾不支持VP9视频编解码器和WebP图像压缩格式(目前均已支持)。
解决问题和更新的速度慢
基于以上两个问题,经常有开发者向苹果报告有关Safari中实现WebAPI和CSS功能中的许多错误,但是,苹果解决问题的速度特别慢。
且不说苹果会不会重视你提出的问题,就算解决了,Safari也不会像Chrome和Firefox那样定期自动更新。想让Safari快点更新?不好意思,它只能跟着整个操作系统来。换句话说,系统更新有多慢,Safari解决问题的速度就有慢。这一点上,苹果或许可以向微软学学:同样是系统自带的浏览器,Edge就采取了自动更新。
不过以上问题的存在并不影响Safari是一款优秀浏览器的事实,快速的性能和出色的隐私保护都是其亮点所在。只是Safari的这些问题在一定程度上令许多开发者感到头疼,尤其是在如今苹果设备愈发流行的情况下(昨日苹果发布了2021年第三财季财报,iPhone销售额增长近50%),由于Safari的不同,他们无法一次性创建出适用于所有浏览器平台的绝佳体验。
那么,你最讨厌哪个浏览器呢?
参考链接:
https://blog.perrysun.com/2021/07/15/for-developers-safari-is-crap-and-outdated/
☞☞