
Google Home Sample App for Matter は Google Home Mobile SDK を使用して、 Google Home app (GHA)に似た Android アプリを作成します。 このサンプルアプリには、次の機能があります。
- 物理デバイスと仮想 Matter デバイスを ローカル Android ファブリックにコミッションする
- 物理デバイスと仮想デバイスを開発ファブリックにコミッションする
- 開発ファブリック上のデバイスを操作する(照明をオンにするなど)
- マルチ管理機能を使用すると、開発ファブリック上のデバイスを他のアプリと共有できます。また、他のアプリから共有されたデバイスを開発ファブリックに含めることもできます。
- デベロッパー ユーティリティ
このガイドでは、Sample App for Matter APK をインストールし、 Matter デバイスのコミッション、操作、共有に使用する方法について説明します。Matter
ソースコードをダウンロードし、 Mobile SDKを統合して、Android Studio で画面をカスタマイズするには、 Sample App for Matter Codelab をお試しください。
Sample App for Matter Codelab に移動
前提条件
- テストに使用できる Android O(8.1、API レベル 27)以降のデバイス。デバイスが最新のMatter サポートを備えていることを確認するには、 Matterモジュールとサービス を確認するガイドをご覧ください。
- オン/オフ機能を備えた Matter デバイスをビルドします。このサンプルアプリは、仮想デバイスと ESP32 で動作します。
- Matter 仮想デバイス(MVD)。 環境の問題を最小限に抑えるため、まずは MVD を使用することをおすすめします。問題が発生した場合は、サンプルアプリを MVD に対して使用すると、調査がはるかに簡単になります。
- Matter 仮想デバイス
を
rootnode_dimmablelight_bCwGYSDpoeアプリでビルドします。 Matter 統合 を Google Home Developer Console で作成する場合は、 ベンダー ID に0xFFF1、プロダクト ID に0x8000を使用します。 - Espressif デバイスをビルドします
all-clusters-appを使用します。デベロッパー コンソールで Matter 統合を作成する場合は、ベンダー ID に `0xFFF1`、プロダクト ID に `0x8001` を使用します。MatterDeveloper Console0xFFF10x8001
Sample App for Matter を使用してデバイスをコミッション して操作する場合、ハブ(Google Nest Hub (2nd gen)など)は必要ありません。Sample App for Matter
インストール
[Releases section] GitHub リポジトリに移動します。Sample App for Matter最新リリースについては、[Assets] セクションで という名前の APK を探します
GHSAFM-version-default-debug.apk。targetcommissionerは選択しないでください。Android Debug Bridge(adb)をインストールします。
Android デバイスを USB で接続して [ファイル転送] を有効にし、 APK をインストールします。
$ adb unroot && adb install GHSAFM-version-default-debug.apk
デバイスをコミッションする
サンプルアプリを初めて起動すると、 Sample App for Matter Codelab へのリンクを含むダイアログが表示されます。 [今後このメッセージを表示しない] を選択した場合は、アプリの [Admin] セクションで設定を更新することで、いつでもダイアログを再度表示できます。
次の手順では、Matter デバイスを ローカル Android ファブリックに追加します。また、サンプル アプリにローカルな開発ファブリックも追加します。
Matter ファブリックとは

Matter ファブリックは、ホーム ネットワーク内のデバイス 間で共有される信頼ドメインであり、デバイス間の通信を可能にします。
デバイスには、プラットフォーム、アプリ、または相互にやり取りするデバイスのグループに対応する 1 つ以上のファブリックが存在する場合があります。ファブリックには一意の ID があり、デバイスは同じ認証情報と認証局 (CA )のセットを共有します。これらの認証情報は、Matter コミッション時に割り当てられます。
Matter デバイスをコミッションする手順は次のとおりです。
[Add Device] ボタンをタップして、コミッション プロセスを開始します。

次に、Google Play services の呼び出しから起動される に制御が転送されます。Mobile SDK所有権の証明を確立するには、[QR コードをスキャン] を選択するか、[ペア設定コードを使用] をタップします。

コミッションが完了したら、[Device Name] に名前を入力して、[Done] をタップします。
デバイスがローカル Android ファブリックと開発ファブリックの両方に接続されました。
デバイスのコミッション時に、コミッション作業と関連する画面はすべて Play servicesによって処理されます。これにより、一貫したユーザー エクスペリエンスが提供され、Wi-Fi や Thread の認証情報などの機密情報に関わる権限を処理する必要がなくなります。
デバイスを操作する
開発ファブリックは、サンプルアプリから Matterデバイスを操作するための認証情報を作成します。
ホーム画面で、デバイスのオン / オフを切り替えることができます。 デバイスをタップすると、デバイスの詳細が表示されます。

デバイス共有
デバイスの共有は、マルチ管理フローと Matter仕様で呼ばれます。 デバイスがサンプルアプリにコミッションされると、他のエコシステムと簡単に共有できます。
Matter デバイスを他のエコシステムと共有するには、 Android デバイスに別のプラットフォームをインストールする必要があります。この外部プラットフォームがターゲット コミッショナー になります。ターゲット コミッショナーとして使用できるサンプルアプリの別のインスタンスを作成しました。
[Releases section] GitHub リポジトリに移動します。Sample App for Matter最新リリースについては、[Assets] セクションで APK という名前の
GHSAFM-version-targetcommissioner-debug.apkを探します。defaultは選択しないでください。ターゲット コミッショナーをインストールします。
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apkホーム画面でデバイスをタップして、デバイス情報を表示します。[Share] をタップします。

サンプルアプリは Mobile SDK Share API を呼び出し、再び 制御が Play services に転送されます。
共有シートが表示され、デバイスをペア設定するアプリまたはプラットフォームを選択できます。この画面では、デバイスを共有する 2 つの方法があります。
- ターゲット コミッショナー アプリと共有するセットアップ コードを使用して手動で行う
- コミッショナーとして登録されているローカル Android アプリを使用する Matter
ターゲット コミッショナー アプリには GHSAFM-TC というラベルが付いています。このサンプルアプリのインスタンスをタップして、デバイスを共有します。
次に、外部アプリ(ターゲット コミッショナー)がデバイスのコミッションを独自のファブリックに完了します。
設定
ホーム画面で、設定 アイコンをクリックします。ここでは、ユーザー設定の更新、ヘルプの取得、アプリの詳細の確認を行うことができます。

ハーフシート通知
[Settings] 画面で、Matter デバイスのプロアクティブなコミッション可能な検出通知を無効にできます。
アプリケーションが独自の Matter 検出または コミッション フローを提供している場合は、中断を防ぐためにこれらの通知を抑制することをおすすめします。詳細については、コミッション可能な検出 通知 を抑制するをご覧ください。
デベロッパー ユーティリティ
[Settings] 画面から、[Developer utilities] にアクセスすることもできます。
デバイスとユーザー設定の DataStore リポジトリの内容を [Logcat]で確認する手順は次のとおりです。
[Log repositories content] をクリックします。
ダイアログで [OK] をクリックし、[Logcat] を確認します。
フィードバックやご質問
Sample App for Matter での開発 の改善点など、ご意見やフィードバックがありましたら、フィードバック フォームにご記入ください。
Sample App for Matter で問題が発生した場合は、次の手順で環境を確認してください。
サンプルアプリの使用についてご不明な点がある場合や、コードのバグを発見した場合は、GitHub リポジトリの Issue Tracker に問題を送信してください。
技術的な質問について Google から公式なガイダンスを得るには、スマートホーム デベロッパー フォーラムをご利用ください。
コミュニティから技術サポートを受けるには、Stack Overflow で google-smart-home タグを使用してください。