Skip to main content

Why Third-Party Browsers Will Always Be Inferior to Safari on iPhone and iPad

iOS supports third-party browsers, but not like you might expect. Third-party browsers will always be inferior to Apple’s own Safari on iPhone and iPad — at least until Apple relaxes their restrictions.

This is the reason why Mozilla no longer offers their Firefox Home app for iOS, and it’s the same reason why Google’s Chrome developers had an internal debate before releasing the current Chrome app in the App Store.

All Browsers Must Use Safari’s Rendering Engine

Apple’s App Store policies state: “Apps that browse the web must use the iOS WebKit framework and WebKit Javascript.”

This means that web browsers can’t implement their own rendering engines; they must embed a version of Safari’s rendering engine. They can’t offer a faster rendering engine or new web features. In effect, each third-party browser on iOS is a different interface around Safari.

On traditional desktop operating systems, like Windows, Mac OS X, and Linux, each browser can provide its own rendering engine. This is why Mozilla Firefox was so much better than Internet Explorer 6, and why Google Chrome was so much faster than Mozilla Firefox 3.0. Each browser developer could create its own optimized rendering engine. If Mozilla Firefox was forced to render websites with Internet Explorer 6’s rendering engine, Firefox would never have taken off and we might still be stuck with Internet Explorer 6 today

…But They Can’t Use Safari’s Fast Nitro JavaScript Engine

It’s even worse than it sounds. Third-party browsers aren’t just forced to use Safari’s rendering engine — they’re forced to use a slow JavaScript engine while only Safari can use a faster JavaScript engine. Specially, they’re forced to use the older, WebKit JavaScript engine while Apple’s new Nitro JavaScript engine is reserved for Safari alone.

This means that third-party browsers will always render web pages with JavaScript slower than Safari itself will. Apple will continue developing their Nitro JavaScript engine, and Safari will continue to get faster while third-party browsers will become even slower in comparison.

In effect, all third-party browsers aren’t just different versions of Safari — they’re all basically just slower versions of Safari.

Sure, a browser manufacturer could theoretically create a special version of their browser that only ran on jailbroken devices and distribute it outside the App Store, but they won’t. They’d be appealing to a limited market of jailbreakers that Apple is trying to stamp out.

Third-Party Browsers Can Never Be Defaults

Apple’s iOS also doesn’t let you select your default applications, so third-party browsers can never be your default browser. Even if you prefer Chrome, tapping a link in most other applications will still open Safari. You’d have to copy-paste the link from Safari into Chrome to view the page in Chrome instead.
Application developers are allowed to have their apps open other apps, so there is a way to sort-of make another browser your default. Every app has to hard-code a list of alternate browsers it supports and provide a way to choose between them. A user will have to select their default browser in each app individually, and they’re out-of-luck if they prefer a browser that the app’s developer hasn’t included.
app-specific-default-browser-choice-on-ios

They Can’t Have Add-Ons, Either

The same app store policy means that third-party browsers can’t offer support for browser add-ons. Do you use LastPass to store your passwords? You’ll have to use the LastPass app, which implements its own internal browser — you can’t just install a LastPass add-on for Safari or Chrome. Of course, LastPass’s internal browser is also forced to be slower than Safari.
Add-ons are possible on other platform, even if they’re not available in every browser. For example, Chrome for Android doesn’t support add-ons because Google doesn’t want it to. That’s fine because Firefox for Android does support add-ons. You can install a LastPass add-on and use your preferred password manager in the Firefox app itself, if you prefer. You have a choice.

Third-Party Browsers Are Crippled

Third-party browsers will never be faster than Safari — they’ll always be slower. They’ll also always be more inconvenient to use as they can never be your default.

Browsers try to make up for these limitations by adding other features. For example, Chrome’s prefetching and data compression features attempt to help speed things up. Chrome’s real advantage is that it allows you to sync your bookmarks, open tabs, and other browsing data with the desktop version of Chrome — this is the same reason why Mozilla originally provided Firefox Home, as it allowed Firefox users to access their Firefox browsing data on iOS. Mozilla now says they won’t offer Firefox for iOS until Apple stops crippling third-party browsers.

Unless you want the integration features or other unique options a third-party browser offers, you’re better off sticking with Safari. Apple has designed its operating system so that it will always be the fastest and most convenient option available to you.

chrome-for-ios-bandwidth-options

There’s some hope for change here. Apple once rejected apps for “duplicating functionality” of a built-in app, but they eventually relented and allowed competition. If they never changed this policy, applications like Pandora, Kindle, Gmail, and many other popular applications would never be allowed in the App Store, as they compete with Apple’s own apps like iTunes Radio, iBooks, and Mail. Competition and application choice made iOS a more powerful and flexible platform, and browser choice could make it more powerful and flexible yet.

Image Credit: Kārlis Dambrāns on Flickr
www.howtogeek.com 

Comments

Popular posts from this blog

[AIX] How to restart network service in AIX environment?

When network service like telnet connection hangs, then it is possible the inetd subsystem is not working properly. # refresh -s inetd 0513-095 The request for subsystem refresh was completed successfully. If the refresh hangs for some time and comes back with 0513-056 time out waiting for command response, then the inetd subsystem may not be working correctly and should then be killed nicely. Run #ps -ef | grep inetd and do a kill -15 on the process ID on the line that has /usr/sbin/inetd. Once inetd has been killed, type startsrc -s inetd. If inetd starts, try to telnet into the machine. If inetd does not start up successfully, or if telnet still hangs indefinitely, run kill -15 on the PID of inetd again. Back up the original /etc/inetd.conf file to a new file name by typing: # mv /etc/inetd.conf /etc/inetd.conf.backup The original template is in /usr/lpp/bos.net/inst_root/etc/. You can copy it by typing: # cp /usr/lpp/bos.net/inst_root/etc/inetd.conf /etc/inetd.conf Run start...

Configure Link based IPMP in Solaris

For long we used Tracking IP based IPMP wherein we track the availability of a gateway on the network using ICMP Echo request. When the gateway IP fails to respond it is considered link is unavailable and NIC fails over to the standby NIC in the IPMP group. The biggest disadvantage here is that we use 3 IP addresses: 1 for the Virtual IP 1 for the active NIC 1 for the Standby NIC and ofcourse the overhead of the ICMP echo requests sent every seconds. This can be overcome using the Link based IPMP configuration where you only need only IP Address and there is no overhead of ICMP messages and the failover delay is lot lesser than that of the tracking method. And the added advantage of a very simple configuration. To configure Link based IPMP, create the hostname.<int name> files for the Active NIC and the standby NIC. For instance here, we use the bge0 and bge3 NICs as the IPMP pair where bge0 is active and bge3 is standby and hence the files hostname.bge0 and hostname.bge3 . To...

Windows Server Backup Step-by-Step Guide for Windows Server 2008

The Windows Server Backup feature provides a basic backup and recovery solution for computers running the Windows Server® 2008 operating system. Windows Server Backup introduces new backup and recovery technology and replaces the previous Windows Backup (Ntbackup.exe) feature that was available with earlier versions of the Windows operating system. What is Windows Server Backup? The Windows Server Backup feature in Windows Server 2008 consists of a Microsoft Management Console (MMC) snap-in and command-line tools that provide a complete solution for your day-to-day backup and recovery needs. You can use four wizards to guide you through running backups and recoveries. You can use Windows Server Backup to back up a full server (all volumes), selected volumes, or the system state. You can recover volumes, folders, files, certain applications, and the system state. And, in case of disasters like hard disk failures, you can perform a system recovery, which will rest...