
はじめに
Android 開発エンジニアを担当している岡田です。
今回はユーザーエンゲージメントを高める強力なツールである、 Engage SDK について導入のメリットについて解説できればと思います。
Engage SDK とは
Engage SDK は、Google が 2024 年 7 月に「Introducing Collections, a new on-device surface for your content」というタイトルで発表しました。
この SDK を導入することで、アプリのコンテンツを Android システムの複数の場所に表示し、ユーザーエンゲージメントを向上させることができます。
Engage SDK の基本概念
Engage SDK では、コンテンツをカテゴリー別に分類し、それぞれに対応する Cluster、 Entity を定義しています。
開発者は、これらに沿った情報を Google に送信することで、適切な場所にコンテンツが表示されるようになります。
Engage SDK では、以下の 9 つのカテゴリーが用意されています。
- Watch: 動画
- Listen: 音楽
- Read: 記事
- Shopping: 買い物
- Food: 食事
- Social: ソーシャル
- Travel: 旅行
- Health & Fitness: 健康 & フィットネス
- Other Verticals: その他
例として、Watch カテゴリーを見てみましょう。
Watch カテゴリーには、Recommendation、Continuation、Featured の 3 つの Cluster タイプが含まれています。
ここでいう Cluster とは、デベロッパーが提供するコンテンツをまとめて表示するための UI(ユーザーインターフェース)の単位です。
Engage SDK 全体で、Recommendation、Continuation、Featured の 3 つの Cluster タイプが定義されています。
Watch カテゴリーにおける、各 Cluster の役割は以下の通りです。
| Cluster | 説明 |
|---|---|
| Recommendation | 個々の開発者パートナーからのコンテンツを視聴するためのパーソナライズされた提案を表示します。 |
| Continuation | 複数の開発者パートナーからの未完成の動画や、関連する新しくリリースされたエピソードを1つのUIグループに表示します。 |
| Featured | 複数の開発者パートナーからのエンティティのセレクションを1つのUIグループに表示します。 |
Cluster についての詳細は、Engage SDK Cluster publishing guidelines に詳しく記載されていますので、併せてご確認ください。
また、Watch カテゴリーでは、Cluster 内の単一のアイテムを表すオブジェクトである、Entity が 6 種類定義されています。
| Entity | 説明 |
|---|---|
MovieEntity (映画) |
映画コンテンツを表すエンティティです。タイトル、ポスター画像、再生時間などの情報を含みます。 |
TvShowEntity (テレビ番組) |
テレビ番組シリーズ全体を表すエンティティです。番組名やジャンル、シーズン情報へのリンクなどが含まれます。 |
TvSeasonEntity (テレビシーズン) |
特定のテレビ番組のシーズンを表すエンティティです。シーズン番号やエピソードリストへのリンクを持ちます。 |
TvEpisodeEntity (テレビエピソード) |
テレビ番組の個々のエピソードを表すエンティティです。エピソード番号、タイトル、あらすじなどが含まれます。 |
LiveStreamingVideoEntity (ライブ配信動画) |
ライブストリーミング中の動画コンテンツを表すエンティティです。ライブの開始・終了時刻や現在の視聴者数などの情報を含みます。 |
VideoClipEntity (ビデオクリップ) |
短い動画クリップを表すエンティティです。ミュージックビデオやニュースクリップ、ハイライトシーンなどに利用されます。 |
動画視聴アプリであれば、アプリ内のコンテンツをこれらの Entity に変換し、Cluster へ登録・公開するといった実装の流れになります。
具体的な実装方法
以下は Google が公開しているサンプルコードの中から抜粋した、
FeaturedCluster に MovieEntity を追加し、公開している constructFeaturedClusterRequest メソッドです。
suspend fun constructFeaturedClusterRequest(): PublishFeaturedClusterRequest {
// おすすめとして表示する映画のリストを取得
val featuredList = movieDao.loadMovieIsCurrentlyWatching(false)
// FeaturedClusterを構築するためのBuilderを初期化します。
val featuredCluster = FeaturedCluster.Builder()
// 取得した映画のリスト featuredList を featuredCluster へ追加する
for (item in featuredList) {
featuredCluster.addEntity(ItemToEntityConverter.convertMovie(item))
}
// PublishFeaturedClusterRequest(Featuredクラスタ公開リクエスト)を構築
return PublishFeaturedClusterRequest.Builder()
.setFeaturedCluster(featuredCluster.build())
.build()
}
他カテゴリーでも、実装の流れは同じになります。
詳細については、Engage SDK Codelab | Android Developers が用意されていますので、こちらをご参照ください。
Engage SDK を導入するメリット
表示される場所
Engage SDK を導入することで、アプリのコンテンツは以下の場所に表示されるようになります。
| 表示 | アクセス方法・対象 | 機能 | 特徴 | 備考 |
|---|---|---|---|---|
| スマートフォンのコレクション | Play Store のアイコンを長押し > コレクション | パーソナライズされたおすすめコンテンツを表示 | ユーザーの興味に基づいた動的なコンテンツ推薦 | 米国を中心に展開中 |
| タブレットのエンターテイメントスペース | Android タブレットのホーム画面左端(一部メーカーの端末では非搭載、または異なる機能の場合があります)。 | エンターテイメントコンテンツの推奨表示 | 大画面を活用したリッチなコンテンツ表示 | |
| Google Play ストア | アプリの詳細ページなど | 関連コンテンツの表示 | アプリ発見時の追加コンテンツ提供 |
導入メリット
Engage SDK をアプリに導入することは、開発者にとって多くの戦略的利点をもたらします。
そのメリットは、ユーザーエンゲージメントの向上から開発負担の軽減まで多岐にわたります。
1. ユーザーエンゲージメントの飛躍的向上
ユーザーがアプリを直接開かなくても、スマートフォンのホーム画面などから直接コンテンツにアクセスできるようになります。
Google の機械学習を活用したパーソナライズ機能により、個々のユーザーの興味関心に基づいたコンテンツが推薦されるため、クリック率の向上が期待でき、アクティブ率の維持・向上に大きく貢献する可能性があります。
2. Googleプラットフォーム上でのアプリの可視性向上
アプリ内のコンテンツが Google Play ストアやエンターテイメントスペースなど、複数の Google のサービス(サーフェス)に表示されるため、ユーザーへの露出が増加します。
これにより、既存ユーザーの満足度を高めるだけでなく、これまでアプリを知らなかった潜在的な新規ユーザーを獲得する絶好の機会が生まれます。
3. 開発負担の軽減とスムーズな統合
技術的な観点からも、導入のハードルは低く設計されています。
SDK は非常に軽量で、平均的なアプリの APK サイズ増加は圧縮状態で 50KB 未満に抑えられると明記されています。
また、既存のアプリ構造を大きく変更することなく統合できるため、開発期間は約 1 週間程度と短期間で完了します。
これにより、少ないリソースで大きな効果を狙うことが可能です。
4. データに基づいた継続的な改善
データ駆動型のアプローチにより、提供するコンテンツを継続的に最適化できます。
Google の高度な機械学習がユーザーの行動をリアルタイムで分析し、最も効果的なコンテンツ推薦を自動で行います。
開発者はパフォーマンスに関する分析結果や改善提案を活用し、常にユーザー体験を向上が期待できます。
今後の展望
Engage SDK は現在、米国を中心に、日本を含むいくつかの国で展開されています。現在の認知度はまだ高くない状態ですが、今後露出が増えると考えられます。
アプリ開発者は、この新しいプラットフォームを早期に活用することで、競合他社に先駆けてユーザーとの接点を増やし、アプリの成長と成功につなげられるでしょう。
まとめ
Engage SDK は、Android アプリ開発者にとって画期的なツールです。
従来アプリ内に閉じていたコンテンツを Google Play ストアやスマートフォンのコレクションなど、Android システムの複数の場所に展開することで、ユーザーエンゲージメントの大幅な向上を実現します。