ナビゲーションをスキップ
部 II 章 11

PWA

Web Almanacのキャラクターがウェブページをモバイルウェブアプリに変換しているヒーロー画像。

はじめに

2015年、私たちは初めてプログレッシブウェブアプリケーションについて読みました。レスポンシブ、接続独立性、アプリライクなインタラクション、常に最新、安全、発見可能、再エンゲージ可能、インストール可能、リンク可能という9つの属性が、当時ウェブ技術で達成できる最先端を定義していました。 PWAのコンセプトは10年前に生まれ 、構想から10年経った今、この技術群の現状を誇りを持って振り返ります。

PWAのコンセプトはこの10年で大きく進化し、異なるブラウザがさまざまなバリエーションと異なる名称でサポートしています。モバイルブラウザで「ホーム画面に追加」を通じてウェブアプリへのアクセスを可能にする方法として始まったアイデアは、今や複数のプラットフォームとデバイスで存在感を示しています。これらの技術群はウェブコンテンツを基盤となるプラットフォームに直接統合し、高度なケイパビリティとよりネイティブに近いルック&フィールを同時に実現します。ここ数年でPWAにもたらされた変化を見ていきましょう。

PWA/ウェブアプリの変化

ここ数年、ウェブアプリにはさらなるカスタマイズ、アプリケーション動作の高度な制御、パフォーマンス向上を可能にする新機能が追加されてきました。何より、複数のエンジンでウェブアプリのサポートが進展しています!

Chromiumベースのブラウザは、最小要件が満たされるとアプリケーションのインストールを促します。かつてはマニフェストファイル、サービスワーカー、セキュアな接続を持つアプリが対象でした。しばらくの間、これがPWAインストール可能性の「3要素」でした。これが変わり、現在はマニフェストのみが必要です(HTTPS接続は引き続き必要ですが)。サービスワーカーはEdgeやChromeなどのブラウザがインストールプロンプトを表示するための要件ではなくなりました。

一方、Safariはウェブアプリのインストールプロンプトを表示しません。ただし、macOS 14ではDockに追加することで任意のウェブページをアプリとしてインストールできます。

PWAにとって大きなニュースとして、Firefoxがバージョン143からウェブアプリをサポートするようになりました!これは現在WindowsのPWAのみで利用可能で、「Mozilla Connectコミュニティからのトップリクエスト」に応えるものです。

ウェブ ベースのウェブアプリにおいて、サービスワーカーを持たないことへの懸念の一つはオフラインサポートです。サービスワーカーを使用することで、開発者はウェブアプリのUIを構成するリソースをキャッシュして優れたオフライン体験を提供できます。要件の変更(Chromium)またはデフォルト動作の変更(SafariとFirefox)により、ブラウザは接続不足からユーザーを守るデフォルトのオフライン体験を提供するようになっています。

この概要を踏まえ、データに踏み込んで現在のPWAの状態を理解しましょう。可能な限り、今年のデータを3年前のデータ(最後にPWAチャプターが存在した時)と比較します。

サービスワーカー

サービスワーカーは、バックグラウンド同期、オフラインサポート、プッシュ通知などの高度なケイパビリティをウェブアプリに提供するうえで引き続き不可欠な存在です。今年のデータによると、ウェブプロパティの約5分の1がサービスワーカーを使用しています。

図11.1. ランク別のサービスワーカー制御ページ。

まず、ランク別のサービスワーカー制御ページを見ていきましょう。上位1,000ページでは、30.3%(デスクトップ)と28.9%(モバイル)がサービスワーカーによって管理されています。これは3年前のデータと比べて約20%の増加です。

全体的に、すべてのランクグループで強い増加が見られ、 PWAウェブサイトの割合は2022年の1.4%(デスクトップとモバイル)から20.5%(デスクトップ)と20.0%(モバイル)へと上昇しました。

以下では、イベント、メソッド、オブジェクト別のサービスワーカーのケイパビリティ使用データを示します。

サービスワーカーのイベント

図11.2. もっとも使用されているサービスワーカーのイベント。

サービスワーカーで最も使用されているイベントはactivate(アクティベーション)で、ほぼすべてのサービスワーカー(PWAの約96%)が使用しています。installイベントは約64%の使用率で2位を占めています。installactivateはともにコアライフサイクルイベントであるため、これらの数字は驚くべきものではありません。アプリケーションがロード時間を短縮するためにリソースをキャッシュし、サービスワーカーの管理を行っていることを示唆しています。

fetchnotificationclickpushなどの高度なイベントの使用はかなり低く、これらがネットワークリクエストの傍受、デフォルトのオフラインUXのバイパス、プッシュサービスからの通知配信といったより高度なシナリオに該当するケイパビリティであることが原因と考えられます。

サービスワーカーのメソッド

図11.3. もっとも使用されているサービスワーカーのメソッド。

最も使用されているサービスワーカーメソッドを見ると、skipWaiting()が顕著な使用率を示しており、デスクトップで68%、モバイルで63%の利用率です。ブラウザはサービスワーカーを即座にアクティブにして古いものと置き換えます。これは開発者がユーザーが古いアセットのままになることを防ぎたいということを意味しています。ダッシュボードやメッセージングアプリのような頻繁なアップデートが必要なアプリケーションに有益で、ユーザーがアプリケーションの最新バージョンをすぐに入手できるよう助けます。

サービスワーカーのオブジェクト

図11.4. もっとも使用されているサービスワーカーのオブジェクト。

最も使用されているサービスワーカーオブジェクトはclientscachescacheです。clientsについては、clients.claim()を呼び出してサービスワーカーがすべての開いているページを制御する方法として期待通りの結果です。cachesについては管理メソッドがトップに登場しており、開発者がアセットを最新の状態に保って高速なページロードを実現するために使用するメソッドであることを考えると、これも驚くべきことではありません。

先に示唆したように、これらの主要なメソッドはclaimopen/delete/keys/matchaddに対応しています。

登録プロパティ

図11.5. もっとも登録されているサービスワーカープロパティ。

サービスワーカーの機能をさらに掘り下げると、データはPWAが使用している高度なケイパビリティに光を当てています。デスクトップとモバイル全体でサービスワーカーを使用しているすべてのPWAのうち、約7%がpushManagerに登録し、2%がsyncに登録し、2%がnavigationPreloadに登録しています。

ウェブアプリマニフェスト

ウェブアプリマニフェストは今や、これまで以上にウェブアプリの最も重要な部分です。ルック&フィールを定義し、インストール後に利用可能な高度なケイパビリティを有効にし、ウェブアプリケーション全体を識別する不可欠な要素になりつつあります。ただし、有効に機能するためにはマニフェストファイルが正しく形成されている必要があります。

図11.6. デスクトップで解析可能なモバイルマニフェストファイルの割合。

今年はデスクトップサイトの94.5%、モバイルサイトの94.9%が解析可能です。前回のデータセットから変化はなく、前回同様、マニフェストファイルが解析可能であることは機能の完全性や最低限の利用可能性を意味するわけではありません。マニフェストの多くの値は重要に見えても、適切なフォールバックが用意されています。

これらの解析可能なマニフェストから、個々のフィールドを見ていきましょう。これにより開発者がマニフェストファイルをどのように使用しているか、また2022年以降に変化があったかどうかを理解できます。

マニフェストプロパティ

図11.7. もっとも使用されているマニフェストプロパティ。

最もよく使用されているPWAマニフェストプロパティはnameiconsshort_namedisplaybackground_colorです。上位4つの最も使用されているプロパティは2022年と同じで、順序にわずかな変化があります。

Web Almanacがスキャンしたマニフェストファイル全体で個々のメンバーがどのような評価を受けているかを見ていきましょう。特に注記がない限り、値はモバイルとデスクトップで非常に似ているため、両方を合わせて言及します。

マニフェストフィールド デスクトップ モバイル
name 92% 93%
icons 90% 91%
short_name 82% 85%
display 82% 85%
background_color 80% 82%
theme_color 80% 82%
start_url 61% 68%
scope 31% 35%
description 25% 27%
orientation 17% 21%
図11.8. マニフェストプロパティ。

categoriesメンバーを指定しているマニフェストでは、トップカテゴリは以下の通りです:

図11.9. もっとも使用されているマニフェストカテゴリ値。

マニフェストキーcategoriesは多くのPWAで使用されていませんが、これらの結果はウェブアプリがより人気のあるトップの縦型市場を示唆しています。

マニフェストのdisplay

displayメンバーはウェブアプリの優先表示モードを指定するために使用されます。ブラウザによってこれらの値の解釈は異なりますが、全体的にブラウザのUXをどれだけ表示/非表示にするかをUAに示します。

図11.10. マニフェストで最も使用されているdisplay値(standalone)。

ほとんどのウェブアプリ(78%)はdisplayメンバーにstandalone値を選択しています。ドキュメントによると、standaloneは「スタンドアロンのネイティブアプリのようなルック&フィールでアプリを開く」とされています。開発者がアプリをよりネイティブに見せたい、ブラウザのクロームや他のUXを取り除きたいというのがウェブアプリの一般的な意図であるため、これは驚くべきことではありません。最終的にはこれは実装によって異なり、例えばChromiumブラウザでは...メニューが表示され、FirefoxではインストールされたアプリにもURLバーなどのブラウザUIが残ります。

マニフェストのiconsサイズ値

図11.11. マニフェストで最も使用されているアイコンサイズ値。

トップサイズは192x192と512x512です。

マニフェストのorientation

図11.12. マニフェストで最も使用されているorientation値。

当然ながら、PWAの約79.2%はorientationを設定していません。レスポンシブデザインとモダンな開発により、アプリの向きを定義する必要性が低くなっていますが、portraitは約12.2%で2位を占めています。

サービスワーカーとマニフェストの使用状況

最も使用されているサービスワーカーとマニフェストの機能に関する最新データを見てきました。2025年では、サイトの約5分の1がサービスワーカーを使用し、約10分の1がマニフェストを使用していることがわかります。

図11.13. PWAサービスワーカーとマニフェストファイルの使用状況。

全体として、2022年版Web Almanacのデータと比べると大きな変化があります。サービスワーカーの使用率は約1.7%から19.2%へと大幅に跳ね上がりました。これは採用率の約10倍増加です。マニフェストの使用率はわずかに高いものの、3年前とほぼ同じ水準に留まっています。

これをさらに掘り下げると、Google Tag Managerがサービスワーカーを有効にしたことが成長の大きな要因となっているようです。

PWAとFugu API

2025年のPWAで使用されている高度なケイパビリティトップ10は以下の通りです。

ケイパビリティ モバイル デスクトップ
Compression Streams 18.4% 20.9%
Async Clipboard 17.9% 19.1%
Device Memory 10.7% 10.6%
Web Share 9.6% 9.8%
Media Session 6.8% 7.8%
Add to Home Screen 6.8% 7.3%
Media Capabilities 6.3% 7.3%
Cache Storage 9.00% 3.00%
Service Worker 3.7% 3.3%
Push 1.7% 1.6%
図11.14. PWAで使用されている高度なケイパビリティトップ10。

2025年におけるこれらのAPIの採用状況をより深く掘り下げるためのケイパビリティ専用チャプターがあります。

通知とPWA

通知はアプリにとって理にかなった機能で、ユーザーがアプリケーションに再エンゲージできるようにします。これは物議を醸すケイパビリティで、ユーザーに承諾させようとする悪いUXやダークパターンが数多く存在します。データによると、デスクトップとモバイルの両方で、ユーザーが最も一般的にとる行動はこれらのリクエストを無視することです。

図11.15. PWA通知の承諾率。

デスクトップの通知承諾は圧倒的に無視されており、78%が無視され、モバイルではわずかに低いものの依然として高い48%が無視されます。これはユーザーが日常的に経験している通知疲れを考えると驚くべきことではありません。

結論

PWAが誕生して10年が経ちました。技術とケイパビリティが成熟するにつれてランドスケープは少し変化し、現在はすべての主要ブラウザ(Edge、Chrome、Firefox、Safari)がある程度ウェブアプリをサポートしています。ウェブアプリは引き続き成長を示しており、クロールされたウェブサイトの約4分の1がサービスワーカーまたはマニフェストファイルを持っています。

新機能のペースが遅くなったと感じているなら、それは正しいです。数年前と比べると今日ローンチされるウェブアプリ機能は少なくなっています。これはプラットフォームがケイパビリティの面で、ウェブ技術スタックを使ってさまざまなユースケースを作成できる成熟度に達したという事実と関係していると思います。一方で、クロスエンジンのケイパビリティサポートと密接に結びついた採用の問題もあります。一部の主要ブラウザがいくつかの高度な機能をサポートし始めたのはごく最近のことで、ウェブアプリを取得またはインストールする可能性についてはなおさらです。

実装者のサポートが遅いためと思われる高度なケイパビリティの控えめな使用が続く中、Web Shareなどの古いケイパビリティも登場し始め、さらにはwindow-controls-overlayのようなよりニッチなUX機能もデータに現れ始めています。ゆっくりと着実にこれらの機能はコモディティ化されつつあります。

PWAチャプターがあった最後のWeb Almanacを振り返ると、以下のことに気づきます:

  • 2つの追加ブラウザ(SafariとFirefox)がウェブアプリをサポートするようになりました。
  • サービスワーカー制御ページは2022年からすべてのPWAウェブサイトで約20%増加しました。
  • 3年前と比べてサービスワーカーイベントの多様性が少なくなっています。notificationclickpushfetchを使用しているPWAの割合が減少しています。
  • pushManager登録の割合は2022年から低下しており、これは通知のプッシュよりもパフォーマンスに焦点を当てたサービスワーカーの使用(下記注記参照)が増加しているためと考えられます。
  • 2022年から2025年の間にPWA技術の使用合計(デスクトップ1,250万、モバイル1,550万)は約2倍になりました(2022年はデスクトップ540万、モバイル790万)。サービスワーカーの使用率は約10倍に急増し、マニフェストは8〜9%の使用率とほぼ同水準を維持しています。
  • 通知プロンプトを無視することが依然としてユーザーにとって最も一般的な行動です。

2025年版Web AlmanacのPWAチャプターを締めくくるにあたり、インストール機能をプラットフォームに直接組み込むことでウェブアプリの配布を民主化する方法を模索する取り組みと合意が進行中です。次の10年間でPWA技術がレスポンシブデザインと同じ運命をたどり、コモディティ化されて、アプリケーションライフサイクル管理に優れたUXを持つウェブアプリが、ウェブアプリの可能性を再定義する新しいケイパビリティとともに標準になることを願っています。ウェブアプリの次の10年に乾杯!

著者

引用

BibTeX
@inbook{WebAlmanac.2025.PWA,
author = "Gonzalez、DiegoとSolati、MichaelとSalnikov、MaximとHollberg、KaiとGustafson、AaronとGüler、OnurとPollard、Barry",
title = "PWA",
booktitle = "2025 Web Almanac",
chapter = 11,
publisher = "HTTP Archive",
year = "2025",
language = "日本語",
doi = "10.5281/zenodo.18246631",
url = "https://almanac.httparchive.org/en/2025/pwa"
}