Unlike Android, TWA support is not available in Apple platforms yet. So for publishing PWA to apple app store, I presume we have to use WKWebView. I could find these two approaches:
- Hybrid app package: Make a hybrid app using Cordova or Capacitor. These will provide an app wrapper to bundle your app's assets with IPA. But currently, it does not support service workers.
- PWA launcher: Using WKWebView and AppBoundDomains (recently released, available in iOS14). With this, we can launch the browser app in standalone mode. More info on this: https://www.youtube.com/watch?v=LELAuNihs18
Useful links: https://firt.dev/ios-14/#web-views-and-pwas-in-the-appstore
https://www.simicart.com/blog/pwa-app-stores/
https://webkit.org/blog/10882/app-bound-domains/
We used pwabuilder.com to generate swift projects for our applications.
After some tweaking (mostly oauth flow, cookies and external resource handling), we were able to publish multiple 100% web-based apps to the App Store.
As it is still a regular swift app, there is an ability to add any swift-based components to/instead of any routes (for example, we added native animated loader screens, which are shown while waiting for the SSR to load), as well as to handle notifications.
P.S. we use bubblewrap for TWA android build. It requires very little configuration, so we do not care much about reusing non-web codebase across the platforms.
Does anyone have the answer on the current status of PWA's on Ios and the viability of being added to the app store?
I looked at this quite a while back and at that time it wasn't possible.
i read this page https://www.koombea.com/blog/progressive-web-apps-for-ios/ which mentioned there are restrictions on features.
What are the requirments for getting a PWA in the app store?