Eric Elliott
Jul 27, 2017 · 2 min read

Hi, I’m the author. Apple pioneered the process of treating web apps as mobile apps when they first announced iOS. TLDR; On iOS, fall back to App Cache.

A lot of what you can accomplish with Service Workers already works on iOS using the App Cache API which Service Workers were designed to replace.

The current best practice is to implement both so you can fall back to App Cache if Service Worker is not supported.

You’re right that Google’s baseline simply defines standard best practices for web applications — but that’s what PWA’s are: Standard web applications that behave and work like native apps.

What Google is saying is, “if you do these things, we’ll elevate your web app to look and work like a native app.”

iOS has supported the equivalent of the manifest file for many years now via proprietary tags. There are even tools that will read your manifest and generate the iOS tags for you automatically. That means that on iOS, users will be able to easily save your app to their home screen (it’s always been a convenient menu item on iOS, unlike Android, where you had to dig around and exactly 3 regular users have ever discovered it… ;)

I know it sucks that iOS doesn’t support service workers, but if you implement app cache and follow the rest of the best practices, the experience on iOS almost on-par with the experience on Android.

There are more technical details on how to build a PWA that works on both iOS and Android in my original article, “Native Apps are Doomed”.

    Eric Elliott

    Written by

    Make some magic. #JavaScript

    Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
    Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
    Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade