My understanding is that WebKit is the only rendering engine permitted on iOS as a security precaution, ostensibly taking Apple at face value and in good faith.
Numerous zero-days on iOS have targeted WebKit in the past, and to a large extent this makes sense to me. Browsers have become one of the most common malware vectors in the modern era, which isn’t surprising given their entire purpose is to access and execute/render external code.
Given that fact, and the significant attack surface area that opens up, Apple’s stance, in my nebulous interpretation, is that having any other rendering engine permitted to run in iOS presents an unmanageable number of potential vectors for more widespread malware on the platform. (Arguments about their resources aside, we know adding engineers to a problem space doesn’t scale in linear fashion towards solving those problems.)
Apple’s vocal focus on privacy and safety constitutes a significant aspect of their product marketing, and it makes sense they’d want to walk-the-walk, so to speak, to ensure their product lives up to the claims they make.
Now, given that Apple already have trouble keeping up with WebKit vulnerabilities, it’s believable that they’re being entirely genuine* in arguing against the addition of additional browser engines that they’d need to keep up with, on the grounds that doing so presents a real risk to their product’s core value proposition, and by extension, their users.
*However, it’s also important not to over-ascribe anthropomorphic traits to a corporation, and it’s completely valid to argue that Apple benefit heavily from this narrative. Indeed, both can be true.
The solution for anyone who wants this is to not use any browser other than Apple's. It's no excuse for not giving the customer a choice. They can still choose the existing thing if they want it; just don't install anyone else's browser.
Either way, intent shouldn't matter here. What matters more is their actual damage to competition which is apparent.
Look at mac. Do we have a problem with firefox on mac? Both mac and iOS share the same OS kernel. Using security as an excuse is laughable.
I once read on twitter from a mozilla dev saying they were even willing to build a browser engine without JIT just to satisfy the security requirement. But eventually they went with webkit to build Firefox for iOS.
Uh, yes? There's 18 here (just for January 2022, mind) of which only 4 don't affect the Mac version.
https://www.mozilla.org/en-US/security/advisories/mfsa2022-0...
December 2021 has 13, only 1 doesn't affect the Mac.
https://www.mozilla.org/en-US/security/advisories/mfsa2021-5...
etc. etc.
2019: Safari: 166, Chrome: 312 2020: Safari: 76, Chrome: 228 2021: Safari: 33, Chrome: 309
> Safari is much less secure than Chrome
Not by CVE metrics? Which metric are we talking about here?
From today:
>A fake two-factor-authentication app that has been downloaded some 10,000 times from Google Play surreptitiously installed a known banking-fraud trojan that scoured infected phones for financial data and other personal information, security firm Pradeo said.
https://arstechnica.com/information-technology/2022/01/2fa-a...
It's hard to write a web browser that doesn't download and execute JavaScript code from random places.
There has been a bit of wiggle room added on that in recent years. Pythonista offers the ability to write and execute your own Python code, they just don't make it easy to import and run code from random places.
>Judge Thomas Penfield Jackson issued his findings of fact on November 5, 1999, which stated that Microsoft's dominance of the x86-based personal computer operating systems market constituted a monopoly, and that Microsoft had taken actions to crush threats to that monopoly, including Apple, Java, Netscape, Lotus Software, RealNetworks, Linux, and others.
https://en.wikipedia.org/wiki/United_States_v._Microsoft_Cor...
Can you clarify your legal background and/or expertise on competition law and the technical specifics that you believe makes this definitive statement hold true.
Yes.
They all do. Also only Safari can have extensions. Every other browser is blocked from doing so. Every time I bring this up, I’m told it’s okay because Apple has only 50% market share. I don’t understand why your market share matters when it comes to anti-competitive practices.
[1] https://en.wikipedia.org/wiki/United_States_antitrust_law#Ty...
The fact that courts turned competition law into some toothless tool only highlights the problem.
It completely fails to account for the relatively recent platform lock-in and network effects which dramatically amplify the leverage and impact of the platform owner not only on the end users (who could with great effort choose a different platform and migrate all their data and services) but also the third parties who need access to the platform in order to enter a market.
I don't think any of these are strictly limited to Safari. As far as I can tell, every feature you mention could be implemented by the third-party browsers.
> Only Safari can have extensions
The Orion browser [1] supports extensions, although I suppose the App Store rules could prove to be a problem with executing arbitrary code as it hasn't run through the full review process yet.
> only Safari can have iOS Content Blockers
Brave blocks content and ads.
> only Safari supports Screen Time
There is new API [1] for this and I believe everything you mentioned is available to developers, although I haven't used it myself.
> only Safari is allowed to launch apps
This should be possible to implement by checking the `.well-known/apple-app-site-association/` and calling `openURL:` on matches. It might be difficult to know for sure if some apps were installed or not, but that doesn't seem to be the key issue here.
[2]: https://developer.apple.com/documentation/deviceactivity/dev...
A prototype with support for extensions already went through full review process https://apps.apple.com/us/app/kagi/id1484498200
I've been enjoying Orion a lot so far. Thanks for all of your work on building something new!
Reimplemented. iOS builds these mechanisms in, but many (seemingly) can't be used by other browsers.
> The Orion browser [1] supports extensions, although I suppose the App Store rules could prove to be a problem with executing arbitrary code as it hasn't run through the full review process yet.
Safari Extensions, from the iOS App Store, have a UI optimized for iOS/mobile. I tried installing 1Password for desktop Chrome on Kagi mobile, didn't work since it couldn't communicate with the 1Password iOS app (might be a problem on Kagi's end though). 1Password's iOS WebExtension seemingly only works with Safari.
> Brave blocks content and ads.
Not through iOS Content Blockers; Brave had to reimplement that. BTW, Brave on Android lets you add custom filters, but doesn't on iOS; not sure if that's Apple's fault.
> There is new API [1] for this and I believe everything you mentioned is available to developers, although I haven't used it myself.
Hadn't seen this, thanks.
> This should be possible to implement by checking the `.well-known/apple-app-site-association/` and calling `openURL:` on matches. It might be difficult to know for sure if some apps were installed or not, but that doesn't seem to be the key issue here.
Interesting. It's sad though that of all browsers I've tried, none supported this; it's a sad statement on the quality of non-Safari browsers on iOS.
https://developer.apple.com/documentation/xcode/preparing-yo...
> Apps that have the com.apple.developer.web-browser managed entitlement may not claim to respond to Universal Links for specific domains. The system will ignore any such claims. Apps with the entitlement can still open Universal Links to other apps as usual.
[0]: https://developer.apple.com/app-store/review/guidelines/#2.5...
Last time we had someone arguing with a dozens of comment saying he is using a third party browser on his iPhone. Before we finally got to the point and realise he didn't know every iOS browser is based on the same webkit.
This also completely ignores the distinction that it's the App Store which doesn't allow third party rendering engines and not iOS itself (you could create a free developer account and build and run a version of Chrome using Blink if you'd like). So this comes back to the larger question of whether Apple should be allowed to so heavily restrict the installation of software to its own distribution mechanisms.
The fact web developers have to use open standards to support iOS is basically the only reason we have open standards on the web today.
Chrome is not popular because people like it. Chrome is popular because Google forces over 80% of phones on the planet to ship with it as default, and because people trying to install Adobe Reader and Adobe Flash Player would suddenly discover their default browser was now Google Chrome. And then, once they had a decent install base... a lot of other people installed Chrome because some poorly written website that didn't follow web standards told them it'd only work well if they installed Chrome. Like Gmail, the world's most popular email client.
This is false. Yet, even if it were true, Chrome's 75% marketshare outside of mobile is strong evidence that it's pretty popular.
What's false about it? It's either chrome or chrome-based, isn't it? Or can you actually get the play store if you have a default browser of firefox?
> Chrome's 75% marketshare outside of mobile
Is covered by the rest of the sentence.
One of the rare cases where a non default option overtook the defaults.
Also IE felt years behind the competition and the situation isn't even remotely comparable to Safari. It seems like the Safari team made some efforts to catch up. While they aren't at the same point as Firefox or Chromium they did catch up a little bit over the last year.
The situation with IE was completely different. Microsoft used IE to push proprietary standards like ActiveX and it felt like there wasn't really a active development team for Internet Explorer or that Microsoft IE wasn't a priority. The first thing isn't true for Safari and while it feels like Safari wasn't a priority for Apple they announced making more of an effort if I remember correctly and if they don't Safari will probably go down the same road as IE.
This is the equivalent of just like 'well he stabbed a man, but the guy deserved it and was a filthy pleb"
It doesn’t change my opinion that Chrome has the best performance, developer experience, and latest API features. It’s the only browser trying to give web apps access to the expensive hardware I paid for.
I know it’s a hot take to like that, but unfortunately tons of my desktop software must be connected to the internet anyways to make sure I’ve paid a subscription bolted on a few versions ago :( I prefer the sandbox and portability of a web app when that’s my alternative.
This is the root of the problem: Google isn't the open web, Google is the one closing it.
Also, Chrome's notification API is, in practice, that thing I have to shut off when people keep asking why porn ads are constantly popping up on their PC in the bottom right corner. Probably not a great model for others to follow.
https://httptoolkit.tech/blog/safari-is-killing-the-web/
The largest Safari complaint is unrelated to experimental features from the Chrome team: it's the showstopping bugs in implemented features, made worse by Safari's slow release cycle.
A privacy-invading feature like FLoC which thankfully has been disbanded. And Google even controls specs. Thankfully, due to safari web is free from the monopoly of Chrome. Today some website doesn't work in firefox. Do you think that is good for the web?
I understand the shenanigans of Apple here. They just want to make sure people make apps instead of the website so, that they can egregiously charge a yearly fee + 30% of revenue. But safari does protect the web in some way by challenging Google.
They cannot.
Edge - Google Chromium
Vivaldi - Google Chromium
Opera - Guess what? Yes its Google Chromium
Electron - Google Chromium
The only two other engines are: Webkit Firefox
Firefox is barely surviving and is using funds from Google. If Google stop those funds, its gone. Webkit is from Apple and if you look on my apple it is only alternative till today. If IOS allow other browser then you should know web will be in hands of Google.
Google can do whatever they like. And web being in hands of Google is dangerous.
Even spinning off Chrome might not be enough: Even if it's not Google, it'd still be the entire web platform controlled and implemented by one group.
As for 'over group' - no, with the crucial advantage of Chrome bundled with Android and Google gone, other players will pick up quickly, competing for those lucrative deals with the search engines. Currently this space is dead because nobody dares competing with Alphabet.