Is this a progressive web app or a native app ? How does it work ?
In a nutshell, our mobile web app started as a pure "progressive web app" but has been extended to be available as a native iOS application also.
What is a progressive web app (PWA) ?
Despite the technical name, it is essentially just a specialised website that can be installed onto a mobile phone as if it is a stand-alone application.
It actually still runs inside a web browser, but from the user's perspective the only difference between a PWA and a native app is that PWA's are not installed from an app store.
What are the benefits of a progressive web app ?
Because these are essentially specialised web pages, it is super quick and easy to deploy fixes and new features to users. New releases do not have to go through the app store approval programs or first be installed by the user. The next time they use the application, they'll automatically be using the newer version.
What are the downside of a progressive web app ?
While some device specific features are not available inside a web application, this does not impact our application all that much.
The biggest downside is when the device the application is installed onto does not correctly or fully support the PWA standard. This can lead to inconsistent behaviour.
Why is there a native Apple iOS version of this app ?
Apple iOS does not currently allow background playback of audio for PWA - a complete deal-breaker for a radio and podcast applications.
To work around this we have created an iOS version that is exactly the same application but installs as a native app from the Apple App store.
We build an Apple version for each customer, and upload and maintain them under our App store account.
App store versions are only built and uploaded to the App store after any trial period has completed and providers have signed up for a paid app.
Is there a native version for Android available ?
Currently almost all Android devices, new and old, have very good support for PWA's.
We may in the future release a native version for Android device on the Google Play store.