AndroidAndroid Deep linkingGoogle技術

Androidディープリンキングの技術ガイド:Google Play Referrer

By 10月 30, 2017 No Comments

これはAndroidでのディープリンキングに関する技術ガイド(4部構成)のパート4です。これまでの投稿では URIスキーム, Chromeインテントアプリリンクを取り上げました。

ディープリンキングでのGoogle Play Referrerの使用

ディープリンキング技術の1つに、アプリがインストールされていないニッチ使用事例に適したものがあります。開発者にはGoogle Playストアを通じてカスタムパラメータを渡すオプションがあります。このパラメータは、ユーザーが初めて自分のアプリを開いた時にそのアプリによって受信されます。このパラメータを適切に管理すれば、この技術によってその新規ユーザーがどこから来たかを知ることができます。また、インストールプロセス全体でカスタムのランディングページやディープリンクを作成できます。

Google Play Referrer Google Deep Linking

Android Install Referrerの要件

  • アプリがインストールされていないこと
  • Chromeインテントでは使用できないこと(PlayストアURLを構造化する必要があるため)

Android Install Referrerの設定

Androidのインストールリファラーを受信するよう自分のアプリを設定するためには、自分のアプリを登録してcom.android.vending.INSTALL_REFERRERブロードキャストを受信できるようにする必要があります。自分のマニフェストの<application />タグ間に、以下を挿入します。

この場合、io.branch.testbed.InstallListenerはブロードキャストを受信する自分のカスタムクラス名です。これはBroadcastReceiverのシンプルなサブクラスです。 このクラスで必要となるボイラープレートコードは次のとおりです。

アプリでの処理

上の説明に従ってBroadcastReceiverを設定すれば、インテントの処理は簡単です!処理のメカニズムはURLスキームインテントの場合と非常に似ていますが、onReceiveの呼び出し内から発生する点が異なります。 例を以下に示します。

Google Play Referrerの実用的用途

この技術を適切に使用するには、ユーザーがやりとりできるGoogle Playストアへのリンクを管理できることが必要です。アプリパッケージ名はio.branch.testbedで、次のいずれかでGoogle Playを開くことができるとわかっているとします。

  1. market://details?id=io.branch.testbed
  2. https://play.google.com/store/apps/details?id=io.branch.testbed

リファラーを加える場合は、これらのいずれかのリンクに&referrer=specialparamを加えるだけです。そのためにはリンク自身を管理する必要があります。

注:Chromeインテントのセクションでお気づきになったかもしれませんが、Play Storerリンクは管理できないため、このメソッドを活用することも不可能です。

リファラーのパラメータを管理するためには、URLメソッドで説明したクライアント側のJS内にこのパラメータを埋め込むことをお勧めします。次のコード例は、アプリを開こうとした後に実行されるマーケットリンクのフォールバック関数にリファラーがどのように追加されているかを示すものです。

結論

この投稿は退屈だとお感じになっても無理はありません。Googleのディープリンキングは非常に複雑で、特殊なケースが至る所で見られます。Branchのツールをお使いになれば、自分のリンクがどこでも動作することを確信できます。

Request Demo Create Links