地平

Peter Conn
Peter Conn

信頼できるウェブ アクティビティを取り巻くエコシステムは広く存在しており、 その関連性と使用すべきリソースを確認します この記事では、それに対処していきたいと考えています。

Trusted Web Activity を初めて使用する場合や、おすすめのツール セットをお探しの場合は、 を使用する必要がありますが、次の点に注意してください。

  • バブルラップ: デベロッパーが Android APK を作成、ビルドできるようにする NodeJS ツール。 既存の PWA をラップします。 生成されたアプリケーションは信頼できるウェブ アクティビティを利用していますが、これは 開発者です。Android 開発の経験は必要ありません。 使用方法については、バブルラップのドキュメントをご覧ください。
  • android-browser-helper: 信頼できるウェブ アクティビティをカプセル化する Android ライブラリ 構成されます。 Android 開発に精通していて、Trusted Web の使用を希望するデベロッパーにおすすめします。 アクティビティを Android アプリのアクティビティの 1 つとして使用している、または Bubblewrap がサポートしています。 android-browser-helper の使用を開始するには、ドキュメントデモをご覧ください。

次のセクションでは、すべてのプロジェクトを相互に関連させて簡単に概要を示します。 最後に(非常に興味がある方のために)歴史セクションで、どのようにしてここに到達したのか、 近いうちに導入する予定です

ライブラリの概要

使用する可能性のある各ライブラリについて、簡単に要約します。

  • androidx.browser: ユーザーのブラウザにインストールされているブラウザとやり取りするための Android ライブラリ ダウンロードします
  • Android Browser Helper: 信頼できるウェブ アクティビティのために androidx.browser 上に構築されたライブラリ 便利なメソッドと適切なデフォルト値を提供します。
  • Bubblewrap: Java に触れずに PWA から Trusted Web Activity を作成するツール できます。

また、以下の各ライブラリ/ツールは古いライブラリやツールに置き換わります。

履歴

Android サポート ライブラリ

Android サポート ライブラリ: 新しい API と互換性により Android プラットフォームを拡張 説明します。 これは複数のパッケージに分割されており、次のものを含むカスタムタブ サポート ライブラリが含まれています。 ユーザーのシステム上のブラウザとやり取りするための機能。 カスタムタブ サポート ライブラリの開発は、主に custom-tabs-client で行われていました。 変更がアップストリームされて Android サポート ライブラリに戻されている GitHub リポジトリ。

カスタムタブは、ブラウザを使用してウェブページを表示する Android のアクティビティです。 デベロッパーにとっての主なメリットは、テーマを設定できることと閉じるボタンがあることです。これにより、 デベロッパーのアプリに残ります(アプリから離れてフル ブラウジングが発生することはありません) 。 Android API として、カスタムタブはどのブラウザでもサポートでき、ユーザーのデフォルトが使用されます。 (デベロッパーによってオーバーライドされる可能性があります)。

信頼できるウェブ アクティビティは、カスタムタブの上に構築されているため、 この custom-tabs-client ライブラリを使用します。 信頼できるウェブ アクティビティにより、ユーザーが所有サイトを閲覧しているときに、カスタムタブのトップバーが表示されなくなる アプリのデベロッパーです これにより、ネイティブの Android アプリ内でウェブサイトをシームレスに統合することが可能になります。 すべての機能がウェブによって提供されるアプリの作成に使用すること。

AndroidX

その後、Android サポート ライブラリAndroidX にリブランディングされました。これは、 デベロッパー エクスペリエンスを向上させるための大規模な取り組みである JetPack。 そのため、カスタムタブと信頼できるウェブ アクティビティは、カスタムタブのサポート ライブラリから 新しい androidx.browser

custom-tabs-client で作成したコードの一部は、信頼できる ウェブ アクティビティのヘルパークラス。Android API 用ではありません。 Chrome のバージョンが最新でないかどうかをチェックし、ユーザーに更新または データの保存方法を決めるときに AndroidX に移行できませんでした。 そこで、custom-tabs-client のこれらの部分を含む代替ライブラリを作成しました。 androidx.browser に移動できなかったため、Android Browser Helper が誕生しました。

Android ブラウザ ヘルパーは、ブラウザに固有のコードを含めるために作成されました( Chrome のみ。他のブラウザ向けのコードも受け付けています。また、 避けるべきです これを機に、この 2 つのライブラリの役割を大まかに分離しました。

  • androidx.browser には、Google Play 上のブラウザとやり取りするための基本的な構成要素が含まれています。 アクセスします。
  • Android Browser Helper には、使いやすく、適切なデフォルト実装が含まれています。

ブートストラッピング

開発者は多忙な人で、やらなければならないタスクや締め切りに追われています。 そこで、ユーザーが信頼できるウェブ アクティビティをブートストラップできる 2 つのツールを作成しました。

1 つ目(最も古いもの)は svgomg-twa です。これは GitHub でホストされている Android プロジェクトで、 信頼できるウェブ アクティビティ。 元々はデモ プロジェクトとして設計され、テンプレートへと進化しました。 ユーザーはこのリポジトリのクローンを作成し、自分のウェブサイトを指すように build.gradle ファイルを変更できます。 Java コードに触れることなく、信頼できるウェブ アクティビティを生成できます。 (デジタル アセット リンクの確認にはさらに手間がかかります。詳しくはこちらをご覧ください)。

svgomg-twa は当初 custom-tabs-client に依存していましたが、その後 Android に移行しました。 ブラウザ ヘルパー(および推移的 androidx.browser)。

最新かつ最も便利な Bubblewrap ツールは、Node.js ツールで マニフェストして、信頼できるウェブ アクティビティを生成します。 既存の PWA から信頼できるウェブ アクティビティを作成する最も簡単な方法であり、 Android 開発の知識は不要です

近日開業

次の 2 つの理由により、svgomg-twa のサポートを終了する予定です。

  • Bubblewrap は基本的に、開発者用に記入された svgomg-twa を生成します。 この処理はインタラクティブに行われ、ウェブアプリ マニフェスト(PWA)から構成を取得できます。 すでにあるはずです)。
  • Trusted Web Activity プロジェクトを開始する方法を Android Browser Helpers の demos ディレクトリを参照できます。

新規のデベロッパーは、代わりに Bubblewrap を使用してプロジェクトを生成してください。 すでに svgomg-twa を使用していて、大幅な変更を加えている場合は、 更新はされませんが、更新されません。

Google は、Bubblewrap にできる限りの機能を提供する予定です。これにより、明らかな機能が不足している場合や、 バグを見つけた場合は、お気軽に問題を作成してください。