Add progressive web app play store/app store

Adam Kundrat picture Adam Kundrat · Jun 28, 2017 · Viewed 20.6k times · Source

Our PWA is completely build using new Angular. We have implemented all optimizations such as tree shaking, uglify, AOT, service worker, etc. It works very well and behaves as the mobile app. If users add it to their home screen it's hard to tell difference.

We are running into few big limitations with PWA:

  • all notifications (crucial) for our business must be sent as SMS. This obviously has huge cost benefit. We did look into using "web" push notification on the Android although we do have many iOS users as well .
  • We need ability to "track" geo location in "background" and HTML5 Geolocation API does not cut it.
  • currently every time user navigates to the URL (send as SMS reminder) it tends to open new tab in the browser (depends on the phone). Even if user actually add the app into their home screen. This obviously increase the loading time and creates too many tabs. We would rather bring app in the foreground and navigate to particular route (or use push notifications)
  • some of our active users can easily receive 10 notifications per day and they need easy way to navigate into the app.

We looked into NativeScript and Ionic. Both provides an ability to develop Angular app but they all "seems" to designed around writing apps specifically for mobile (...or starting from scratch with them).

I might have missed something but what would be the best practise when we just want to put wrapper around our progressive web app so it can be installed as "hybrid" app. The app simply navigates to our public URL, it supports service workers and also allows us to access some native functions.

I understand I might be missing the point of PWA here but writing another "native" app is not really option for us.

What would be the best way to expose our progressive web as an app in Google Play Store or Apple App Store?

Answer

Sorskoot picture Sorskoot · Jun 29, 2017

A great place to get started with a Hosted Web App is PWABuilder.com. This tool can be used online or from the CLI. Part of it creates a service worker and stuff, but it also creates the Cordova projects for Android and iOS.

I have used PWABuilder just to create a starting point. Eventually combining the generated iOS and Android projects into one for iOS, Android and Windows. Because it is Cordova you can use plugins as well.