Trusted Web Activity は、カスタムタブに基づくプロトコルを使用して、Android アプリからプログレッシブ ウェブアプリ(PWA)などのウェブアプリ コンテンツを開く新しい方法です。
注: Trusted Web Activity は、Android 版 Chrome バージョン 72 以降で利用できます。
コードを探す
- GitHub の android-browser-helper ライブラリ
- Trusted Web Activity のデモ
- Bubblewrap: 信頼できるウェブ アクティビティ プロジェクトを生成してビルドする NodeJs ライブラリ / CLI
Trusted Web Activity は、Android アプリからウェブ コンテンツを開く他の方法とはいくつかの点で異なります。
- 信頼できるウェブ アクティビティのコンテンツは信頼できるものであり、アプリとそのアプリが開くサイトは同じデベロッパーのものである必要があります。(これは デジタル アセット リンクを使用して検証されます)。
- 信頼できるウェブ アクティビティでレンダリングされるコンテンツはウェブから取得されます。ユーザーのブラウザでレンダリングされ、全画面で実行される点を除き、ユーザーがブラウザで表示するコンテンツとまったく同じ方法で表示されます。ウェブ コンテンツは、まずブラウザでアクセス可能で有用である必要があります。
- ブラウザも Android やアプリとは別に更新されるため、APK のサイズを削減し、最新のウェブ ランタイムを使用できます。(Lollipop 以降、WebView は Android とは別にアップデートされていますが、Lollipop より前の Android ユーザーはかなりの数に上ります)。
- ホストアプリは、信頼できるウェブ アクティビティ内のウェブ コンテンツや、Cookie や
localStorage
などの他の種類のウェブ状態に直接アクセスできません。ただし、URL でページとの間でデータをやり取りすることで、ウェブ コンテンツと連携させることができます(クエリ パラメータやインテント URI など)。 - ウェブ コンテンツとネイティブ コンテンツの切り替えは、アクティビティ間で行われます。アプリの各アクティビティ(画面)が、ウェブまたは Android アクティビティによって完全に提供される
テストを容易にするため、現在のところ、Trusted Web Activity のプレビュー版で開くコンテンツの資格要件はありません。ただし、信頼できるウェブ アクティビティは、ホーム画面に追加と同じ要件を満たす必要があります。これらの要件を満たしているかどうかは、Lighthouse の「ユーザーにホーム画面に追加するよう求めるメッセージが表示される」監査で確認できます。
現在、他のブラウザでも、信頼できるウェブ アクティビティで使用されているプロトコルを実装できます。どのブラウザを開くかを最終的に決定するのはホストアプリですが、カスタムタブの場合と同じポリシー(必要な機能が提供されている限り、ユーザーのデフォルト ブラウザを使用する)をおすすめします。
次はどこに行く?
PWA を起動して開くだけの Android アプリをすばやく作成する場合は、クイック スタート ガイドをご覧ください。
Trusted Web Activity を既存の Android アプリに統合する場合は、統合ガイドを参照してください。