ディープリンク

ユーザーがスマート デバイスを Google Assistant に接続し、Google Home Graph でストラクチャや部屋に割り当てる際、主に使用するのが Google Home app (GHA) です。通常、 統合をセットアップするためには、複数の画面を順番に移動し、利用可能なオプションの中から Cloud-to-cloud 統合を選択します。ユーザーがセットアップ プロセスを簡単に開始できるようにすることで、オンボーディングを迅速化し、ユーザーがセットアップで感じる不満を軽減できます。

ディープリンクを使用すると、アプリまたは製品のウェブサイトにディープリンクを埋め込んで、ユーザーが smart home デバイスを Assistant に簡単に接続できるようにすることができます。リンクをクリックすると、GHA をダウンロードするよう求めるメッセージが表示され(まだインストールされていない場合)、アカウントのリンクと部屋の割り当てのセットアップ フローが起動します。

Google Home へのディープリンクを設定する

ディープリンクを使用すると、Android アプリや iOS アプリから、GHA 内の特定のリンク先に直接移動できます。これにより、デバイスを簡単にセットアップできるようになります。

GHA でアカウントのリンクを直接開始するには、次のユニバーサル リンクを使用します。

https://home.google.com/home-app/?deeplink=setup%2Fha_linking%3Fagent_id%3Dagent-id

ここで、agent-id は、Cloud-to-cloud 統合のプロジェクト ID です。これは、プロジェクト設定の Google Home Developer Console で確認できます。

カスタム スキーム(Android と iOS)を使用して起動するモバイルアプリの場合は、次のものも使用できます。

googlehome://setup/ha_linking?agent_id=agent-id

ユーザーがユニバーサル リンクをクリックすると、モバイル プラットフォームは GHA の存在を確認し、アカウント リンクフローを開きます。ユーザーのデバイスに GHA がインストールされていない場合は、Google Play または Apple App Store からアプリをインストールまたは更新するようユーザーに案内するフォールバック処理を提供します。

Android の明示的インテント

明示的なインテントを使用して Android アプリからアカウントのリンクフローを直接トリガーするには:

val intent = Intent(Intent.ACTION_VIEW).apply {
    val agentId = "YOUR_AGENT_ID"
    data = Uri.parse("googlehome://setup/ha_linking?agent_id=$agentId")
    setPackage("com.google.android.apps.chromecast.app")
}
try {
    startActivity(intent)
} catch (e: ActivityNotFoundException) {
    // Fallback: open Google Play app, with web browser safety
    try {
        val playStoreIntent = Intent(Intent.ACTION_VIEW,
            Uri.parse("market://details?id=com.google.android.apps.chromecast.app"))
        startActivity(playStoreIntent)
    } catch (e: ActivityNotFoundException) {
        val playStoreUrl =
            "https://play.google.com/store/apps/details?id=com.google.android.apps.chromecast.app"
        val webIntent = Intent(Intent.ACTION_VIEW, Uri.parse(playStoreUrl))
        startActivity(webIntent)
    }
}

madeby.google.com または assistant.google.com でフォーマットされた以前のディープリンク URL は非推奨になりました。

https://madeby.google.com/home-app/?deeplink=setup%2Fha_linking%3Fagent_id%3Dagent-id

ユニバーサル リンクまたは googlehome://setup/ha_linking カスタム スキームを使用するように、アプリ内のすべてのボタンとプロダクトのウェブサイトを更新します。

アプリ内からディープリンクをトリガーする方法について詳しくは、関連する Android のドキュメントまたは iOS のドキュメントをご覧ください。