[go: up one dir, main page]

この記事は デベロッパー アドボケート、Todd Kerpelman による The Firebase Blog の記事 "What's new with Firebase Dynamic Links?" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。


Firebase Dynamic Links の新機能

皆さんは既に Firebase Dynamic Links をご存知かもしれません。Firebase Dynamic Links は、ユーザーを iOS アプリや Android アプリの任意のアプリ内コンテンツに案内できるスマート URL です。最初にアプリのインストールが必要になる場合でも大丈夫です。この数か月間で Dynamic Links にはいくつかのすばらしい改善が行われており、さらに簡単に使えるようになりました。特に、iOS 側で大きく改善されました。以下では、その新機能について紹介します。

アプリのプレビュー ページの改善

少し前に、iOS でアプリをインストールしていないユーザーがリンクをクリックした場合のために、Dynamic Links チームはアプリのプレビュー ページを追加しました。その理由は、ユーザーを App Store にリダイレクトする JavaScript を無視するアプリもあるためです。このような動作は、特に人気のソーシャル アプリで多く見られます。アプリのプレビュー ページを設けることによって、ユーザーはデベロッパーが意図したように確実に App Store にたどりつけるようになります。さらに、次に App Store が開くことがわかるので、ユーザー エクスペリエンスの向上にもつながります。

とはいえ、初期のプレビュー ページはやや質素なものでした。このページの導入以降、アプリストアの掲載情報または直接指定できるプレビュー用アセットから取得したグラフィックやアセットを使って、このページの見栄えを整えてきました。これによって、アプリストアへのクリックスルー数が大幅に増加したことがわかっています。そしてもちろん、見た目もよくなっています。

アプリのプレビュー ページ: 改善前、改善後のデフォルト バージョン、カスタム アセットを使用したバージョン

当然ながら、アプリのプレビュー ページを作るのは気が進まないという方は、いつでも削除することができます。そのためには、生成したダイナミック リンク URL に efr=1 を追加するか、Firebase Console で [Skip the app preview page] チェックボックスをオンにするか、iOS および Android のビルダー API で forcedRedirectEnabled パラメータを使用します。

エラー メッセージの改善 -- リンクの追加

Dynamic Links の実装でエラー メッセージが表示される際、ほとんどの場合においてエラーの詳しい意味や修正方法が記載されたドキュメントへの直接リンクが提供されるようになります。すばらしいですね!

iOS の自己診断ツール

Dynamic Links の実装を簡単にする取り組みについて取り上げましたが、iOS 版の Dynamic Links ライブラリには自己診断ツールも追加されました。コード内の任意の場所で DynamicLinks.performDiagnostics(completion: nil) を呼び出すと、Dynamic Links ライブラリがプロジェクトを分析してセットアップ時に発生する一般的なエラーがあるかどうかを検出し、その結果を教えてくれます。さらに、トラブルシューティング チームに連絡する必要がある場合、送信する必要がある情報も提供してくれます。

分析機能の強化

今までは、コンソールで生成された短縮 Dynamic Link について、リンクがクリックされた回数が日ごとに表示されていました。これはとてもすばらしい機能ですが、この分析レポートが強化され、さらに詳しい情報が含まれるようになりました。これからは、ユーザーが Dynamic Link をクリックしてアプリを再オープンした回数と、短縮 Dynamic Link をクリックしてユーザーが初めてアプリを開いた回数も日ごとに表示されるようになります。これは、Firebase Console で表示される分析と、REST API で取得できる分析の両方で利用できます。

また、いつものように Dynamic Links に utm パラメータを追加すると、Google Analytics for Firebase はユーザーを初めてアプリにつなげた重要なコンバージョン イベントを Dynamic Link によるものと見なします。

お試しください

本投稿では、ここ数か月間で Firebase Dynamic Links に対して行われてきたさまざまな改善点のうち、代表的なものをご紹介しました。
  • 分析情報を取得したいが Firebase Console は使いたくないという方のために、短縮 Dynamic Links に関する分析情報を取得する REST API を追加
  • ユーザーがダイナミック リンクをクリックするとどうなるかを、すばらしいフローチャートで正確に示すリンクのデバッグページ
  • すぐにダイナミック リンクを構築できるように、iOS および Android 用ツールを改善

最近 Firebase Dynamic Links を試していないという方は、ぜひこの機会にお試しください。始めるにあたって、参考になる各種ドキュメントもそろっています。また、いつでもサポート チャンネルにご連絡ください。



Reviewed by Khanh LeViet - Developer Relations Team

この記事は プロダクト マネージャー 、Jumana Al Hashal  による The Firebase Blog の記事 "Making Dynamic Links Easier" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。


Firebase Dynamic Links は便利なリンクシステムです。1 つだけのリンクで、インストール済みの iOS や Android アプリを開き、ディープリンクを使用し、ユーザーが探しているコンテンツを直接にアプリ内で表示することができます。アプリがインストールされていない場合にも、同じリンクで App Store や Google Play のアプリのページからアプリ内のコンテンツまで案内することができます。

私たちは 1 年前からこの機能を改善し、よりスムーズでよりパワフルな体験をデベロッパー、ユーザーの両方に届けられるよう努力してきました。今回、最新の機能を iOS SDK と Android SDK に届けることができたことを嬉しく思います。

Dynamic Links をダイナミックに生成する


今まで、Dynamic Links を生成するには Firebase コンソールからアクセスする必要がありました。広告、宣伝などのキャンペーンの目的では十分でしたが、デベロッパーの皆さまからは、ユーザー同士で共有できるキャンペーンなどに対応するために、アプリからリンクを作成できるようにしたいというフィードバックを多数いただいていました。

そのため、iOS と Android の Firebase SDK に、ロングとショートの Dynamic Link を生成する機能を追加しました。

iOS:

guard let deepLink = URL(string: "https://mydomain.com/page?param=value") else { return }

let components = DynamicLinkComponents(link: deepLink, domain: domain)

let iOSParams = DynamicLinkIOSParameters(bundleID: bundleID)
iOSParams.minimumAppVersion = minVersion
components.iOSParameters = iOSParams

// ダイナミック リンクを生成する
let link = components.url

// またはショート リンクを生成する
components.shorten { (shortURL, warnings, error) in
      if let error = error {
        print(error.localizedDescription)
        return
      }
      
    // TODO: shortURL を使用する
    }

Android:

String deepLink = "https://mydomain.com/page?param=value";

DynamicLink.Builder builder = FirebaseDynamicLinks.getInstance()
        .createDynamicLink()
        .setDynamicLinkDomain(domain)
        .setAndroidParameters(new DynamicLink.AndroidParameters.Builder()
                .setMinimumVersion(minVersion)
                .build())
        .setLink(deepLink);

// ダイナミック リンクを生成する
DynamicLink link = builder.buildDynamicLink();

// またはショート リンクを生成する
builder.buildShortDynamicLink()
        .addOnSuccessListener(new OnSuccessListener() {
            @Override
            public void onSuccess(ShortDynamicLink shortDynamicLink) {
                // shortDynamicLink を使用する
            }
        });

新しい Android API

アプリから Dynamic Links を実装しやすくするために Android API を考え直して、新たに FirebaseDynamicLinks というクラスを追加しました。新しいライブラリを追加するには、build.gradle に次の行を追加します。


compile "com.google.firebase:firebase-dynamic-links:11.0.0"

これによって、Dynamic Link から起動したアクティビティを開く際の処理が簡単になります。

FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent())
  .addOnSuccessListener(
    new OnSuccessListener() {
      @Override
      public void onSuccess(PendingDynamicLinkData data) {
      if (data == null || data.getLink() == null) {
        // FDL は特にない。何もする必要がない
        return;
      }

      Intent launchIntent = data.getUpdateAppIntent(MainActivity.this);
      if (launchIntent != null) {
        startActivity(launchIntent); // アップグレード フローを起動する
      }

     Uri deepLink = dynamicLink.getLink();
     String myAppItemId = deepLink.getQueryParameter("myAppItemId");
     // TODO: myAppItemId のコンテンツを表示する
    }
});

新しい API に関するご質問やフィードバックがあった場合は、サポートページをご確認ください


Reviewed by Oscar Rodríguez - Developer Relations Team

[この記事は Todd Kerpelman、Firebase デベロッパー アドボケートによる The Firebase Blog の記事 "Introducing Firebase Dynamic Links" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。]







Todd Kerpelman
Todd Kerpelman
Firebase デベロッパー アドボケート

ウェブサイト上の特定の場所に遷移することができる URL。この概念については、皆さんよくご存じかと思います。モバイル コンピューティング化が進むなか、特定のモバイルアプリ内の特定の場所に遷移することができる URL の使用が増えています。ディープ リンキングと呼ばれるコンセプトです。

アプリへのディープ リンキングの利用は非常に重要であり、その理由は明らかです。たった 1 つの URL で、ユーザーを自分のアプリに誘導するだけでなく、アプリ内の特定の場所に連れていくことができるからです。つまり、アプリの新機能をお知らせするメールの中のリンクをタップするだけで、ユーザーが直接その新機能に遷移できるということです。また、ウェブサイトの「アプリを試す」ボタンをタップすることで、ユーザーをそのアプリに連れていくだけでなく、アプリをインストールするきっかけとなったアプリ内の特定のコンテンツに直接遷移できるようになります。

ただ残念なことに、アプリへのディープリンキングは完ぺきではなく、同じリンクで、お使いの iOS と Android アプリの両方にリダイレクトすることは容易ではありません。もしユーザーがアプリをインストールしていなければ、正常に機能しないか、障害が発生することもあります。何より、ターゲット ユーザーが、まずアプリストアからアプリをインストールしなければならないとしたら、元々のリンクのコンテクストは失われ、そのユーザー用にカスタマイズされた導入ページではなく、通常のホーム画面が表示されてしまうことになります。



この問題を解決するために作られたディープリンクが、Firebase Dynamic Links です。単一のリンクで、ユーザーをインストール済みの iOS または Android アプリに遷移させることができます。もしユーザーがアプリをインストールしていない場合、ユーザーをアプリストアや Google Play 上の適切な掲載情報に連れていくことができます。一番のポイントは、このリンクがインストール中も保持されることです。これにより、初めてアプリを立ち上げた時に、ユーザーをこのアプリに連れてきたディープリンク URL を再取得することができます。

「Share a Coke And a Song」キャンペーンでの Dynamic Links の活用



夏向けのプロモーションとして、Shazam はコカ・コーラと協業し、リップシンクの動画を使って、友達同士で好きな曲を共有できるという企画を実施しています。

ユーザーは、友達から送られた動画をウェブページ内で閲覧できます。Firebase Dynamic Links の導入前は、ウェブページに「アプリをインストール」と「動画を作成する」の 2 つのリンクが含まれており、どちらをクリックするかはユーザー次第でした。しかし、Firebase Dynamic Links を導入することで、その 2 つのリンクを、「Shazam で動画を作成する」というリンクに置き換え、リップシンクの動画を作成したいユーザーを直接アプリにジャンプさせるか、アプリストアに連れていくことができるようになりました。

Dynamic Links を利用すると、アプリをインストールしたユーザーは、アプリ内の希望のコンテンツに直接アクセスできます。Shazam の調査によれば、この手法でアプリをインストールしたユーザーの 2 週間後の継続率は、通常の方法でアプリを始めたユーザーに比べ、15% 高いとのことです。

Dynamic Links の作成

Firebase Dynamic Links は即座に作成できるため、必要な時にいつでもアプリやウェブサイト上に新しいリンクを生成できます。Firebase コンソールから、オンラインフォームを使って Dynamic Links を作成することもできます。これは、技術的な知識を持たないチームメンバーが、URL を手動入力せずにリンクを作成したい場合に利用できます。

Firebase Dynamic Links は、Firebase プラットフォームの一部なので、Firebase Analytics などの機能とも連動しています。リンクをクリックした人数などの基本的な情報に加え、utm_ パラメータ(通常、マーケティングチームが外部キャンペーンに追加するパラメータ)を自動的に追跡するため、ユーザーがアプリにアクセスするきっかけとなったキャンペーンや媒体別に、重要なアプリ内イベントを分析することができます。

さっそく使ってみましょう

Firebase Dynamic Links は、Firebase プラットフォームの利用度合いに関わらず、無料で利用でき、すぐに利用開始できます。利用方法の例として以下が挙げられます。

  • モバイルゲームをお持ちの場合、Dynamic Links を生成し、特定のレベルやリプレイをゲーム内で共有しましょう。ユーザー同士がまったく同じレベルでスコアを争えるようにしたり、別ユーザーのキャラクター プロフィールへリンクさせることができます。Firebase Dynamic Links は、アプリ内でのユーザー間の情報共有に最適です。
  • デスクトップ ユーザーをモバイル ユーザーへウェブサイトのユーザーをモバイルアプリに誘導したい場合、Dynamic Links を使い、「スマホから閲覧」という機能を活用できます。これは、SMS やメールを使って位置を共有するために、Google マップで使われている「スマホに送信」機能とまったく同じです。
  • また、モバイル端末でウェブサイトを閲覧しているユーザーを、アプリ上の同じコンテンツにアクセスさせたい場合、Dynamic Link を使うことで、ユーザーがアプリに遷移し、必要なコンテンツに直接アクセスできるようになります。


Dynamic Links は、メール、SMS、ソーシャル メディアを媒体としたキャンペーンにも最適です。

Firebase Dynamic Links の詳しい情報はこちらから確認できます。Firebase コンソールにアクセスし、すぐにご利用を開始してみてください。


Posted by Khanh LeViet - Developer Relations Team