If there is one thing that developers hate the most, then IE is definitely the first one. The reason is actually very simple, because IE's design is seriously outdated and cannot support various cutting-edge Web APIs and technologies commonly used in modern websites and Web applications. But now, IE has become a thing of the past, and Microsoft has come up with a newer and more advanced browser alternative Edge. After IE retired, the title of the most annoying browser was immediately taken over by another browser - Apple Safari. Similarly, Safari has always lagged behind other competitors in terms of support for modern Web APIs and features, which directly makes it difficult for our engineers to achieve a unified product experience on various mainstream browsers (Chrome, Edge, Firefox and Safari). I saw this article this morning. The programming module was ranked first on Reddit. The author Perry Sun is a product marketing manager of a startup company. His views may not be correct, but I hope it can give you some inspiration. In addition, there is a very lively discussion on Reddit, you can go and take a look. Now we have explored how to achieve a highly unified application experience on the browser with the native application. All of this is made possible by so-called Progressive Web Apps (PWAs), a set of modern browser technologies that allow developers to build web apps on websites that look, feel, and perform like native apps on smartphones, tablets, or desktops. Progressive Web Apps are really cool, and they can even implement the following features that were previously exclusive to native applications:
Progressive Web Apps do not need to be compiled or submitted to the app store for approval. Today, mainstream apps such as Starbucks, Twitter, and Uber have chosen Progressive Web Apps as their carrier. Apple has its own reasons for being slow to support progressive web apps in Safari, as they have been strictly limiting the functionality of progressive web apps, such as prohibiting such apps from posting system notifications or adding shortcut icons to the home screen. There's more to it than that. The only web rendering engine supported by iOS is Apple's own WebKit. Any third-party iOS browser (including Chrome) can only use WebKit and cannot match any other engine (this is not limited on Windows, Android or MacOS). And WebKit is the source of the management function of progressive web applications on the iOS system. Why does Apple want to restrict the Web API of progressive web applications? The high-sounding reason is of course user privacy, but I'm afraid we can only believe half of it. Many friends should be able to imagine that once fully functional progressive web applications are fully supported, the iOS App Store will face huge competition. And only for applications officially listed on the App Store, Apple can take 30% of all application purchases or in-app purchases. Until recently, the controversy over Apple's reluctance to support Progressive Web Apps was largely confined to the Web developer community, but now, as the antitrust lawsuit between Epic and Apple heats up, the issue has finally been exposed to the public. Ultimately, Apple may be forced to fully expand its support for progressive web apps or open the door to other third-party iOS browsers, but we can only wait and see what the outcome of the lawsuit will be. Using the "delay" tactic to deal with WebRTCWeb developers and engineers have long complained that Safari does not support important Web API and CSS features as well as other browsers. As one Reddit user once complained, "…Apple doesn't give a shit about any modern APIs. Progressive Web Apps? Streaming apps? Screw it. But, Apple, we really need all of this." Take WebRTC as an example. It is mainly used to support video and audio communications on the Web, and is also commonly used to send files and share screen content. It took Apple several years to actually bring WebRTC support to Safari, far behind Chrome and Firefox, which made Safari a joke among developers and even industry observers. Although support is finally here, it’s no secret that WebRTC doesn’t work nearly as well on Safari for desktop as it does on other browsers, and developers have found WebRTC support on iOS to be even more messy, if not hopeless. Previously, Safari was criticized for not supporting the VP9 video encoder or the WebP image compression format. But the good news is that until the end of 2020, the relevant support was finally launched. But the old problem remains - the launch time is too lagging compared to other major browsers. Now, a new challenge is once again placed before Apple - whether to unite all forces to support the AV1 video codec and the related AVIF image format. But this is also difficult because Apple itself can obtain royalties from the competing codec HEVC and is also a strong supporter of the HEIC image format. Frequent bugs and untimely updatesMany developers have complained on forums about the numerous bugs in Safari's implementation of Web API and CSS functions, and Apple has been quite slow in resolving them. "Isn't Apple one of the richest companies in the world? Take some money and solve the problem!" complained a user on Reddit. Even more frustrating is that, unlike Chrome or Firefox, Safari doesn't have a regular update cycle at all. It updates at the same frequency as the underlying operating system, which is ridiculously long for a web browser. Even Microsoft has adopted automatic updates for Edge browser, Apple, what about you? Maybe everything will changeDon’t get me wrong, Safari is an excellent web browser with powerful performance and solid privacy features. But at the same time, the poor support for core Web technologies and APIs is both confusing and infuriating. The huge popularity of iOS, coupled with Apple's constant use of various means to hinder developers from creating a unified and excellent web experience on multiple platforms, is even more infuriating. We can understand the reason behind this. After all, Apple has decided to bet its fate on service revenue, so the commission on app/in-app purchases generated by the App Store will be crucial. Apple has always compromised in the face of public pressure. Therefore, in the foreseeable future, I believe that Apple will refer to user opinions and make some significant adjustments to Safari's design. I look forward to Apple's actions. |
>>: Google will no longer support Google services on Android 2.3.7 and below
Introduction: Apple recently updated the relevant...
The Central Meteorological Observatory continues ...
Friends who have read the previous introduction t...
One day, you rushed to the bathroom and suddenly ...
In most people's eyes, bacteria are bad thing...
According to a report by CCTV Finance Channel on ...
Anthony Levandowski, the man at the center of Alp...
A pair of parents came with their child to the ps...
As one of the most successful indoor cultivated p...
Produced by: Science Popularization China Author:...
In the past few days, Ms. Liu cleaned her house a...
Some time ago, there was such a news on the hot s...
Since the birth of the world's first heavy bo...
Different from the boring traditional teaching me...
[[206604]] 1. Introduction As an Android develope...