iPhoneでPWAが動かない?原因と今すぐできる対処法【2026年版】

iPhoneでPWAが動かない?原因と今すぐできる対処法【2026年版】

「PWAを作ったのに、iPhoneで動かない…」
この問題は2024年以降、多くの開発者・ユーザーが直面しています。

結論から言うと、
iPhoneではPWAが“本来の仕様通りに動かないケースが多い”のが原因です。

この記事では、主な原因と、今すぐできる対処法をわかりやすく解説します。


① Safariの仕様制限(最大の原因)

iPhoneではSafariが唯一のブラウザエンジンであり、
PWAの動作もこの仕様に依存します。

しかし2024年以降、SafariはPWAのサポートを大きく制限しました。

  • Service Workerが不安定
  • manifestが正しく反映されない
  • アプリ表示が崩れる

このため、
正しく作っても動かないことがあるのが現実です。


② キャッシュが原因で古い状態のまま

PWAではキャッシュが強く効くため、
変更しても反映されないケースがあります。

よくある例:

  • アイコンが変わらない
  • 内容が更新されない
  • 古いUIのまま表示される

これはバグではなく、
キャッシュが優先されている状態です。


③ Service Workerの更新が反映されていない

Service Workerは自動では更新されません。

そのため:

  • 古いSWが残る
  • 新しいコードが適用されない
  • 挙動がバラバラになる

これが「動かない」原因になることも多いです。


④ そもそもPWAが成立していないケース

技術的な条件が揃っていない場合、
PWAとして認識されません。

  • HTTPSではない
  • manifestが不完全
  • Service Worker未登録

この場合、単なるWebサイトとして動きます。


今すぐできる対処法

① Safariのキャッシュを削除する

設定 → Safari → 詳細 → Webサイトデータ → 削除
これで強制的に最新状態にできます。

② ホーム画面アイコンを削除して再追加

古い状態が残っている場合は、
一度削除して再追加するのが確実です。

③ Service Workerを更新する

skipWaitingやキャッシュバージョンを見直し、
最新状態が反映されるようにします。

④ iPhoneではWebClip前提で考える

2026年現在、iPhoneではPWAは不安定なため、
WebClipとして設計する方が安全です。


まとめ

  • Safariの仕様制限が最大の原因
  • キャッシュが更新を止めることがある
  • Service Workerの更新が重要
  • そもそも条件不足の可能性もある
  • iPhoneではWebClip前提が安全

PWAが「動かない」のではなく、
環境によって成立しないのが現実です。

その前提を理解することで、
正しい設計と対処ができるようになります。

>OJapp Tips

OJapp Tips

PWA開発やWebデザインの現場で使える実践的なノウハウをお届けする「OJapp tips」。iOS特有の挙動ハックからmanifest.jsonの緻密な設計まで、ツール開発者が実機検証(PWA LAB)を繰り返して得た泥臭いリアルな知見を発信中。

私たちが運営する「Petal」は、その仕組みを使って“人のページを名刺のように持つ”ためのミニマルなSNS。QRからすぐ開けて、ログインなしでも見れる。でも、必要なときだけつながれる。そんな「弱いつながり」を未来へ残すために作られています。