[レベル: 中級]
Googleが一般公開している短縮リンクサービスの goo.gl がApp Indexingのディープリンクに対応しました。
ウェブページではなくアプリ内のコンテンツを、短縮リンク経由で直接開くことができます。
オリジナルの英語での公式アナウンスに続いて、日本語での翻訳記事もすでに公開されています。
短縮URLからアプリを開ける
App Indexingを実装しているアプリ側で設定されていれば(設定方法は後述)、そのアプリをインストールしているユーザーが短縮URLをクリックすると、アプリでコンテンツを開けます。
たとえば公式アナウンスが紹介している http://goo.gl/maps/xlWFj はGoogleマップのURLです。
このリンクをGoogleマップがインストールされているモバイル端末でクリックすると、ウェブ版のGoogleマップではなくGoogleマップのアプリで該当の場所を表示できます。
こちらが僕のスマホで試した実際のフローです。
どのアプリで開くかどうかを尋ねるステップが挟まりますが、Googleマップを選択すればGoogleマップが立ち上がり、その場所(ここではマウンテンビューの米Google本社)を表示します。
ブラウザを選択すれば、当然ウェブ版のGoogleマップでその場所を表示します。
その短縮リンクがアプリで開けるかどうかは自動で検出してくれます。
クロスプラットフォームになった goo.gl リンクを開くと、ユーザーがどのプラットフォームを利用しているか、マップ アプリがインストールされているかどうかが自動的に検出されます。アプリがインストールされている場合は、Android または iOS のマップ アプリで直接そのコンテンツが開かれます。アプリがインストールされていない場合やパソコンを使用している場合は、マップのウェブサイトが表示されます。
嬉しいのは、すでに公開している短縮URLにも適用される点です。
これから設定すれば、過去に生成したURLであってもディープリンクに誘導できます。
このクロスプラットフォーム対応の新しい機能は、AndroidアプリのApp Indexingはもちろんのこと、導入されたばかりのiOSアプリのApp Indexingもサポートしています。
これも嬉しいですね。
なお、iOSアプリのApp Indexingは申告が必要で、さらに(モバイル)検索結果でディープリンクが必ずしも表示されるとは限りませんでした。
しかしクロスプラットフォームのリンク共有はすべてのiOSアプリで利用可能です。
ますます嬉しいですね。
ユーザーがアプリをインストールしていないなら、素通りしてそのままウェブページが開くでしょう。
でもアプリをインストールしてもらっているなら、短縮リンクに対応させることでアプリの利用を促進できそうです。
URL Shortener API
クロスプラットフォームでのgoo.glリンク共有を実装するには、URL Shortener API にアクセスする必要があります。
その前に、App Indexingを実装しておく必要があるのは言うまでもありません。
公式アナウンスが説明している設定手順は次のとおりです。
- g.co/AppIndexing にアクセスし、Android と iOS で App Indexing を使用するのに必要な手順を行います。なお、現行の Google 検索からのディープリンクとは異なり、goo.gl ディープリンクはすべての iOS 開発者が利用できます。この手順を完了すると、既存の goo.gl 短縮リンクもアプリへのディープリンクとして機能するようになります。
- 必要に応じ、URL Shortener API をアプリの共有フローやメール キャンペーンなどに統合します。これにより、アプリに直接アクセスできるディープリンクをプログラムによって生成できるようになります。
ドキュメントは今のところ英語だけです。
GoogleのApp Indexing 押し
Googleは、App Indexingを押してますね。
長山さんがこんなツイートを投稿していました。
(冗談はともかく) App Indexing チームはとてもがんばってます!ぜひフィードバックをお寄せください :)
— Kazushi Nagayama (@KazushiNagayama) 2015, 5月 27
サンフランシスコで今開催されている Google I/O 2015 ではApp Indexingをトピックに扱うセッションが3つあります。
2日間の日程のなかで、両日ともにこれらの3つのセッションが繰り返し開かれます。
App Indexingを普及させようというGoogleの思いが現れているように感じます。