Microsoft and Google have been working together to help make Progressive Web Apps (PWAs) easier to publish, in the hope that web apps will one day compete with native apps on mobile devices.
For the past few years, Google has tried to imbue PWAs with the technical means to match native apps on Android or iOS in terms of performance and user experience. Microsoft has shown similar enthusiasm since at least 2016.
PWAs are basically websites that, through the addition of various fairly recent capabilities, can be installed on devices and can function offline, among other things.
Until 2018, Apple's WebKit-based Safari browser limited PWAs on Apple devices due to its lack of support for some of the application programming interfaces (APIs) necessary for PWAs, such as service workers. That year, Apple shipped service worker support in Safari, the last major piece of browser plumbing necessary to make PWAs that function on both Apple and Google mobile devices.
There are still some minor missing pieces and platform differences. Safari doesn't yet support the Background Sync API or push notifications, for example. Its support for the manifest file used to store app metadata is only partial. And iOS only allows 50MB of storage for caching website assets, which prevents sites with large assets, such as video files, from being stored for offline usage.
Overall, though, PWAs now work well enough on Apple and Google platforms that developers can use web tech rather than native SDKs for certain applications.
Apple: We're defending your privacy by nixing 16 browser APIs. Rivals: You mean defending your bottom lineREAD MORE
To advance PWAs further, Microsoft and Google have released tools to make it easier to prepare PWAs for distribution via the Google Play Store, where most people get their Android apps.
Microsoft and Google started working together last year to build Google's command-line tool Bubblewrap, which generates and signs Google Play Store packages, into Microsoft's PWABuilder, initially released in 2018.
Last week, Microsoft developer Judah Gabriel Himango in an online post said the Windows giant's PWABuilder now supports the new web shortcuts standard, which enables things like contextual menus that people have come to expect in native apps.
"Web shortcuts integrate into the operating system — such as Windows’ task bar and start menu, or Android’s home screen— enabling users to quickly access your app’s core functionality," he said.
The integration with Bubblewrap allows developers using PWABuilder to better customize PWAs for Android by supplying specific metadata to describe fallback behavior and the look of the Android status bar and nav bar, among other things. It supports packaging a PWA using the Trusted Web Activity scheme.
PWAs can be installed directly, without the need to go through the Google Play Store. But some developers may find the Google Play Store provides greater visibility and discoverability than direct installation. Association with the Google Play Store also provides access to the Play Billing API, which Google made available to PWAs back in April.
Native apps still have some advantages, though the gap keeps closing. ®