There’s more and more talk about PWA (Progressive Web Apps) as though it were a new technology that’s going to revolutionize the web and toll the bell for native mobile applications. I believe it’s necessary to take a look at the subject and analyze the different points such as implementation, advantages and inconveniences.
In 2007 Steve Jobs stated:
“The full Safari engine is inside of i-Phone. And so, you can write amazing Web 2.0 and Ajax apps that look exactly and behave exactly like apps on the i-Phone. And these apps can integrate perfectly with i-Phone services. They can make a call, they can send an email. They can look up a location on Google Maps, and guess what? There’s no SDK that you need! You’ve got everything you need if you know how to write apps using the most modern web standards to write amazing apps for the i-Phone today. So developers, we think we’ve got a very sweet story for you. You can begin building your i-Phone apps today.”
Which means in summary that it’s been possible (since 2007) to create web apps that work like native applications.
So why the preference for web apps as opposed to native applications? Because web sites pose a problem and result in short visits as compared with native applications:
One can see that the smartphone user visits 3 times more web sites than apps but that s/he spends 20 more time there.
And to try and solve the problem, Google decided to unearth web apps by presenting Progressive Web Apps.
It’s with exactly that by-line that Google presented the PWAs. But what are they really offering?
First, one must know that PWAs are available for Android only. Let’s go step-by-step and see what a PWA on an LG G4 looks like on the Flipboard site:
Straight away, you will see a problem. Flipboard first suggests installing a native application (banner at the top of the page), then putting in place the PWA. Already, that’s confusing.to on the phone’s home screen.
When you click on the “Add to home screen” (“Ajouter à l’écran d’accueil” in the image above), the icon is added.
And when you add this new “app”, a splash screen immediately appears for a brief second:
Then the app opens:
The application has the same look and the same functions as the web site and can be consulted offline. You’ll notice that once again, it asks to install the native application.
It’s also considered a full-blown application in the open application task manager.
As one can see, the PWA installation is very simple and quick but can one really call this an installation? Yes and no. Besides a shortcut that opens the web app in a specific process and with an extended cache nothing really happened. The app does not appear in the list of installed applications.
If you want to test on your own, you’ll find a large number of Progressive Web Apps on pwa.rocks.
However, for a user, there are a number of differences with regards to an existing web page:
There are also several differences with regards to a native application:
PWAs are not yet available for desktops even if this could be an interesting alternative to solutions like Electron.
For web developers, the advantages are enormous! There’s no need to learn a new language such as, in our case, Java. A web developer can easily develop a Progressive Web App or even adapt an existing web site by following the different PWA criteria.
Everything that concerns the application name, its icons, and other options must be configured in a manifest file. You will find more information in Google’s official documentation.
Progressive Web Apps cannot, at least not yet, replace native applications. In fact, numerous applications use low level APIs to operate for performance reasons as well as functions. For example, that’s the case for the Vulkan API for Android. Further, PWAs are not iOS-compatible.
In 2017, this question should be asked systematically.
I don’t think that PWAs will overcome native applications in the short or even medium term because of their technical limits.
However, if you want to launch an e-commerce or content application and your web site is already efficient on mobiles, then PWAs are a very interesting alternative. The necessary budget will be lower for their creation as well as their maintenance. And when they’ll be iOS-compatible, if they are one day, the question will present itself differently.
One should not forget either that Google is behind the concept and has much to gain: their biggest source of revenue is web advertising and they own the widest-used browser in the world and so they could have a hand in a new aspect of smartphones.
Finally, to suggest a Progressive Web App instead of a native application could prove to be complicated at present as it would be tantamount to shutting one off from the iOS market and not being present in application stores. However, a PWA can be a low cost bonus for a web site with a mature mobile position.