Yes, Google and Apple Support PWAs Too

Posted on February 20, 2018 by Paul Thurrott in Android, Dev, iOS, Mobile, Windows 10 with 28 Comments

Google Maps PWA running on Chrome OS (source: Kenneth Christiansen)

We know that Microsoft will be the first platform maker to formally support Progressive Web Apps (PWAs) in its mobile apps store. But the software giant isn’t alone in adopting this important new technology. Both Google and Apple will formally support PWAs in their own platforms too.

As you may know, Google already supports PWAs in a basic way in Android: If you navigate to a PWA—like Twitter Lite—using the Chrome web browser, a pop-up will appear, letting you add that app to your phone. This is a nicety, for sure, but discoverability is an issue. Google doesn’t (yet) offer a way to find PWAs in its app store, Google Play.

(You can also add PWAs to your Android phone using Firefox now.)

At the Chrome Dev Summit in October 2017, Google’s Owen Campbell-Moore announced how the search giant would allow PWAs to work with its desktop platform, Chrome OS. Put simply, PWAs will run on Chrome OS just as they do on Windows 10 (starting with version 1803) and Android, as native apps.

That’s a big deal because PWA was purely mobile-focused before Microsoft’s involvement. But Microsoft is also innovating on store integration: Users will be able to seamlessly find and install PWAs directly from the app store that is built right into the OS. I was told that Google would be adding similar store support at some point, and presumably to both Android and Chrome OS. (In fact, the Chrome OS app store is being phased out for the Google Play Store, so these things will become one and the same over time as well.) I am not aware of a schedule for that change.

YouTube PWA running on Windows 10 (source: Owen Campbell-Moore)

But according to developer Kenneth Christiansen, Google is continuing to add native capabilities to PWA, and these changes will help this platform bridge the gap between its web roots and the underlying OSes on which these apps run.

“Lots of companies (think Slack or VSCode) use Electron today in order to wrap their web apps into a native container, as well as expose additional native APIs,” he writes. “There is a big problem with that approach though, because people constantly find security bugs in browsers and most of these become public, shortly after the browser vendors have fixed them, but the Electron runtime people distribute is often old and updated infrequently — resulting in a big security risk for the users. Desktop PWA support would fix this, but only if developers have access to the APIs they need to build their experiences.”

One of the next native APIs that Google will add to PWA, according to Mr. Campbell-Moore, is support for contacts. Over time, I expect more and more native features to come to PWA, eliminating all but the most specialized of barriers. More to the point, I expect this to happen very quickly.

PWAs running on Chrome OS (source: Kenneth Christiansen)

So we know that PWA is improving rapidly, is coming to all of Google’s platforms and to Windows 10, and will support both desktop and mobile use cases, and app stores. But the big elephant in the room, of course, is Apple.

Yes, Apple is formally supporting PWAs too, and across both iOS and macOS, via Safari and its underlying technologies. I expect an announcement to this effect at WWDC this summer. But Mr. Christiansen points out that the firm has already announced it is actively working to add three of the four core features of PWAs—Service Workers, Caching, and Manifest support—to its platforms. And the fourth, Push, is under consideration. It’s happening.

Mr. Christiansen’s post has some interesting examples of PWAs, and how you can use them on Chrome OS today too. It’s worth reading, if only for further confirmation that 2018 is, indeed, the year of the Progressive Web App.

Tagged with ,

Join the discussion!

BECOME A THURROTT MEMBER:

Don't have a login but want to join the conversation? Become a Thurrott Premium or Basic User to participate

Register
Comments (28)

28 responses to “Yes, Google and Apple Support PWAs Too”

  1. James Wilson

    It would be convenient for small programming houses to support PWA providing the APIs are available and are secure. I don't mind how an app is written, what language it uses etc providing the end experience is sufficiently good (in this case, on all platforms it's running on).


    In the early days of Windows, Microsoft bolted on 'Windows only' API's to Java making it non-standard. The excuse was that to access some of the features of Windows and to make the experience rich etc, Microsoft needed to do this. Let's see where this one goes - and whether the likes of Google, Apple and Microsoft start adding caveats to their implementation.

    • thalter

      In reply to James_Wilson:

      Microsoft is no longer the center of gravity of the computing universe, so I don't think they can pull off their "embrace and extend" move any more.

    • skane2600

      In reply to James_Wilson:

      Microsoft made Java a useful tool on Windows. With Microsoft's modifications it became a great way to perform COM programming.


      "Pure" Java was never a good tool for creating Windows programs. Windows developers weren't very interested in making their programs run on Unix and Unix developers were not very interested in developing Java programs on Windows.


      The true value of Java at the time it was introduced was to allow a windowless program to be written that could run on the diverse (at that time) set of Unix implementations without recompiling (while windowed programs were supported by Java, they weren't the primary focus of Unix developers and Sun's implementation was weak).

  2. RealDarrenCohen

    Re: mobile... This is just the next iteration of the web, but unless Google or Apple add these to their app stores it will stay on the outside of mainstream. Yes you will be able to use these on any device, but only tech people will do this. It's obvious why Apple does not want to put these in App Stores, but Google is a different issue. On one hand it could be good for ChromeOS, but on the other hand it will hurt the Google version of Android. Making apps less dependent on Google Play will boost non Google Android and make the need for their version less so. It's a no brainer for Microsoft.


    For desktop operating systems of all kinds this is a win. Most users won't know it's different, and their workflow can remain the same while the sites they visit become more full featured.

  3. curtisspendlove

    While PWAs are a great technology for many things, I have a hard time seeing them able to match and surpass native experiences. Beyond useful (but arguably trivial) integrations such as notifications, contacts, calendars, etc, they are still nowhere near native apps.


    Any time you need three sets of APIs to match up at a feature parity level, it’s damn near impossible to write for.


    For instance, how do you implement a “System Tray” application? If you look at electron apps you can see the disparity in API capabilities.


    You can hit the lowest common denominator and then add a bunch of lame conditionals to try to make it a bit nicer where additional features are available, but it just isn’t a great experience for the developer or the user.


    Also, the end result is horrible, least common denominator UI/UX that is mostly functional for core use cases, but is bland and superior in few ways.

  4. rmac

    I mentioned it on Mehedi's page on PWAs, but one further thing you'll see MS super excited about (Daniel Roth, Scott Hanselman & Jon Galloway with Steve Sanderson) is WebAssembly (incorporated with Razor = Blazor, allows .NET to run in the browser: Daniel Roth at 12:00). Instead of writing in JavaScript (though you still can if you want to), with the right libraries, devs will potentially be able to do web client side coding in pretty much any language e.g. C#, C, C++, Java, Swift (or whatever language). Near native performance, this is a game changer.


    Check out youtube.com/watch?v=Ta_qXpXQqGQ


  5. Bill Russell

    I think Google invented the PWA. Its understandable why MS would jump at these to pad the store. But, as much as they improved over just websites, or mobile targeted websites, they still are not as good as native apps. Paul you even mentioned recently in a podcast that android was a "train wreck" in comparison with the iOS version apps you use. Think of that they will be even "worse" as PWAs.


    My conspiracy theory is that Google pushed PWAs as "bait" for MS, knowing they follow anything like the wind, and be the final nail for UWP, the true potential threat to chromebooks (that actually seems not be going anywhere) while themselves continuing to push Android on chrome, instant apps and AMP based apps (like the gmail they announced). I know its crazy, just interesting idea.

    • Craig.

      In reply to Bill_Russell:

      More specifically I think the Chrome team invented the PWA.


      I don't think all of Google is necessarily onboard (see instant apps).

    • nbplopes

      In reply to Bill_Russell:


      Yeah. I’ve noticed that lately the wording of Paul seams to be towards Hijacking the technology from the founders for Microsoft.


      if this is to be successful it needs a genuine trilateral effort not this kind of behavior.


      Google is not joining the parade it is the parade. Let’s see what Microsoft actually does, not what it announces. Even though I’m excited about what NS announced.

    • Pbike908

      In reply to Bill_Russell:

      Yeah, I checked out the PWA for Google maps and it works but the android app is better. I think Google's reason for PWA is because of android go. We will have a better understanding of PWA and Windows once the new version comes out.

  6. NoFlames

    PWA's sound like the future, but my guess is that Google/Apple will still try to make platform lock-in features available so that they can try to squeeze out other platforms.

  7. fishnet37222

    From the screenshot, it's obvious that the YouTube PWA is just the website without any browser chrome. PWAs should really take on the visual identity of whichever platform they're running on. On Windows they should look like native UWP apps, on Android they should look like native Android apps, etc.

    • Usman

      In reply to fishnet37222:

      A PWA is a website at the end of the day. Plus the youtube website is a Single Page Application, so it can be very dynamic. Also it's responsive, so on a desktop you want a desktop experience, on mobile and tablets, it can resize itself to those devices.


      I don't believe the twitch site is an officially a pwa, but it does implement a nice mix of traditional desktop view and app style features like a roaming compact view of the stream you're watching.


      Since PWA are websites, they use CSS and usually the CSS is the design language of the website. A company wants to deliver their own unique experience rather than be tied to OS design model. Imagine if Kyak had to change their mobile site to be fluent, material or ios style, I don't see what benefit Material, Fluent or iOS design languages would offer to the flight search process.

  8. Tony Barrett

    Oh dear, oh dear. MS trying to be the 'first' at something. In all honesty, it doesn't matter what MS do now. They could switch everything over to PWA tomorrow, but with no mobile platform to carry them, it doesn't make any difference. Only when Google and (probably at some point) Apple embrace PWA will it make a difference, and Google have been quietly working towards this for a long time - way longer than MS.

    MS might think they're early to the party on this one, but they forgot to read the change of venue notice, so turned up to find nobody there!

  9. Atoqir

    The best thing about this is that it is platform agnostic


    It works on PC and mobile. On chrome, firefox, windows, macOS, linux etc


    Also the fact that you now have a unified UX and UI across platforms is great. I always hated the toy fisher price look of the the UWP control kit. With PWA we can all forget this nonsense and have a platform independent look.


    Double yay

  10. Bats

    It doesn't matter who "formally" supports it. Google has already been sorta doing this for the past few years as I've noticed this a couple of years ago via website using the Chrome browser.

    This may be a "Shazaam" moment for those in the Microsoft Universe, but not really for those outside of it. 

    I just have one question, though. If Microsoft is going to start promoting the use of these web apps, then why in the world are they going to utilize their store for it? All one has to do is click the bookmarks/favorites button on your web browser and BANG...installed (sort of). LOL...it's the web. As a Chrome user, if I were ever to get a new computer or reset my current ones, all I would have to do is re-install Chrome and all my PWAs will be accessible in oneshot, with not time at all. 

    Also, PWAs gives more reason for computer users to move away from Windows than ever. The prospect of a person depending on their favorite PWA to get work done on a Linux, Android, Chrome OS, Apple without the fear of malware infecting their system, is just going to hinder Windows usage once people figures this out. 

    So, in other words, PWAs will hurt Microsoft.

    • conan007

      In reply to Bats:

      Yes but what about other non-PWA apps? There are Office, Photoshops, Matlab, R, Acrobat (not the reader), iTunes, Dropbox (the mobile version is fine but I want local sync), Citrix... and of course other browsers (I think nowadays many people use multiple browsers. I have 4), and then there are games (e.g. from simple such as candy crash to AAA games, and Steam). Are any of these will be ported as PWA anytime soon? The Store will be the only place that is cable of providing all kinds of apps you need.

    • PeteB

      In reply to Bats: If Microsoft is going to start promoting the use of these web apps, then why in the world are they going to utilize their store for it?


      Desperation. To try to pad the irrelevant windows 10 store with something people might want, and to try to create the perception it is Microsoft's idea. I'm sure they will hide or downplay apps that are PWA's, in hopes they just blend in so MS can pretend there are all these new apps in the 10 store and "developers are flocking!"


      Except nobody believes anything they do or say anymore. Nobody's fooled.

      • rickcosby

        In reply to PeteB:

        Last time I looked MS has growing profits and all indications are that this will continue. They don't have much to be desperate about. They want to these apps available to help move users off of the less secure win32 apps which improves the platform. Having apps in the store is better for the users. Try searching for free cd burning apps in Google and you are presented with a dizzying array of crapware from sources that bundle either useless or even malicious software along with the installation. Having apps in the store fixes that. Having PWA apps in the store makes them discover-able without worries that normal users will click on a bad link and create more of a problem than they solve...

    • Wolf

      In reply to Bats:

      "get work done on a Linux, Android, Chrome OS, Apple without the fear of malware infecting their system"


      You seem to be suggesting that these environments are somehow immune to malware? That's hilarious! Further, if/when the Microsoft footprint is reduced, where exactly do you think the hackers will be focusing?

      • hrlngrv

        In reply to Wolf:

        As long as Windows Home automatically gives the first account created Administrator privileges, it will be more vulnerable than Linux and Chrome OS, maybe also macOS now that Apple's fixed logging in as root without a password. UAC may kick in for some system calls, but there's effectively no restriction using default settings on calling command line tools like takeown and icacls.

        Is any OS immune to malware? No. Are some more vulnerable than others? Absolutely, and Windows is among the most vulnerable due to the first account problem and the fact that it's the biggest and juiciest target there is.

  11. SherlockHolmes

    First it was Windows Apps. Then it was UWP Apps. Now its PWA. Sorry guys. Every new plattform Microsoft introduced or promoted the last few years ended in being a disaster. What makes you think it will be diffrent this time around?

    And why is it better to open websites in a programm window other then in a browser window?

    • winlonghorn

      In reply to SherlockHolmes:


      Because this isn't a Microsoft Platform or technology! It is simply being supported and adapted by Microsoft (just as it is with Google and Apple). It has the promise of bringing a much wider audience for developers to target their apps to (basically with one code base to work with). Not a bad proposition at all for developers!

      • SherlockHolmes

        In reply to winlonghorn:

        That doesnt answer my question: Why is an App better as the website opend in a browser?

        • winlonghorn

          In reply to SherlockHolmes:


          I don't fully understand the technology yet, but I would say it isn't as much about where it runs as it is about the fact that it can utilize the native features of the platform that it runs on. That's the way I understand it. Just a way for one app to take on the features of many platforms all on one code base (meaning more flexibility for developers and users)

          • curtisspendlove

            In reply to winlonghorn:

            “I don't fully understand the technology yet, but I would say it isn't as much about where it runs as it is about the fact that it can utilize the native features of the platform that it runs on. “


            This is is the promise. The problem is reality. PWAs essentially just conform to a spec and take advantage of a set of APIs. It is web code, so a OS has to implement the API “hooks”.


            A simple example is that my web app could trigger a Notification. The underlying OS determines what this means.


            • iOS and Android would toss a notification into their respective notification shades
            • macOS would trigger a notification card and add it to the notifications slide-out
            • Windows would trigger a notification card and add it to the notifications list in the system tray


            My app gets a “native” implementation by tossing a single call out.


            This is is undoubtedly cool.


            But it does require a rendering system (ostensibly the OS’s web rendering engine). And it requires the platform vendors to support every API subsystem.


            The good news is that the major browser developers have either pledged support or have actually stated implementation.


            I honestly wasn’t sure if Apple would implement the standards. I’m still a little skeptical. I guess their current thinking is that they kinda have to support PWAs, but are they going to allow them as first-class citizens on iOS?


            :: shrug ::

  12. nbplopes

    I’m super excited about the potential of PWAs and MS anticipation move to supporte it in the App Store is great, great. It’s great that Apple seams to be interested in this tech and its supporting it.


    1. The main benefit of this thecnology is the ability to write an app once and run everywhere in ways deeply intertwined with any host OS when it comes to user experience to the point that can be stand alone, unconnected. Unlike a traditional Web App that need a sandbox called Web-Browser or UWP that was Windows specific. One might not want to offer the best experience possible on a particular ecosystem, but a consistent and very flexible experience across multiple ecossystems. Something like this its very hard to achieve with platform specific apps, requiring huge budgets. This is important in a highly connected and diversified tech world we live today.
    2. PWA is not a technical solution for all kinds of apps. Ultimately, if one wants to provide the very best experience in a particular ecosystem, a dedicated app using technologies specific to that ecosystem from the ground up, is the rational choice. Even from an UX perspective this will still make a lot of sense in a highly competitive app marketplace.


    In the end of the day we still need to know what is the problem domain we are working and where our customers are. That ultimately will guide the decision process required to build a client application.


    Cheers.

Leave a Reply