現在、PWAアプリケーションをテストしています。
Androidでは、うまく機能します。バックグラウンドに移行した後でも、PWAアプリは状態を維持し、ユーザーはエクスペリエンスを継続できます。
しかし、iOSでは、PWAアプリがバックグラウンドになるたびに初期化され、リロードされるようにすべての条件が破棄されます。ユーザーエクスペリエンスは終了します。
IOSでこれを防ぐにはどうすればよいですか?
Update:iOSの最新バージョン(12.4でテストしました)では、PWAの状態が保持されます。 LeoxとRoshilが別のバージョンで同じことを確認してくれたことに感謝します。
iOS/Safariの古いバージョンを処理するための元の答え:
この記事で述べたように 、iOSはまだセッション間のPWAアプリの状態を保持しません:(サービスワーカーに対する最初の公式サポートがiOSでちょうど1週間前(2018年3月末)に来たため、将来的には状態を保持するなど、より多くの機能が期待できます。
今のところ運が悪い。
AndroidとiOSのPWAに関する現在のギャップに関するリンク先の記事の「AndroidおよびiOSではない)」セクションを参照することもできます。 。
回避策として、アプリケーションの状態(現在のページ、ユーザーが入力したデータ、可能な場合はスクロールスタート)をIndexDBに保持し、アプリケーションを再度開いたときにそれを読み取って復元できます。ほとんどのユースケースで機能します。
IOSを12.2ベータ5に更新して、最小化された状態から復元した後のPWAアプリの状態を保持できるようになりました。アップルに感謝!