
Google Home Sample App for Matter 使用 Google Home Mobile SDK 创建类似于 Google Home app (GHA) 的 Android 应用。此示例应用提供以下功能:
- 将实体和虚拟 Matter 设备调试到本地 Android 结构
- 将实体设备和虚拟设备调试到开发结构
- 控制开发 Fabric 中的设备,例如开灯
- 借助多管理员功能,您可以与开发结构中的其他应用共享设备,反之,也可以在开发结构中包含从其他应用共享的设备
- 开发者实用程序
本指南介绍如何安装 Sample App for Matter APK 并使用它来调试、控制和共享 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 使用示例应用时,将更容易进行调查。
- 使用 rootnode_dimmablelight_bCwGYSDpoe应用构建 Matter 虚拟设备。在 Google Home Developer Console 中创建 Matter 集成时,请使用0xFFF1作为供应商 ID,并使用0x8000作为产品 ID。
- 使用 all-clusters-app构建 Espressif 设备。在 Developer Console 中创建 Matter 集成时,请使用0xFFF1作为供应商 ID,并使用0x8001作为产品 ID。
 
您无需使用 hub(例如 Google Nest Hub (2nd gen))即可通过 Sample App for Matter 调试和控制设备。
安装
- 前往 Sample App for Matter GitHub 代码库中的“版本”部分。对于最新版本,请在“Assets”部分中找到名为 - GHSAFM-version-default-debug.apk的 APK。请勿选择- targetcommissioner。
- 安装 Android 调试桥 (adb): 
- 通过 USB 连接 Android 设备并启用文件传输,然后安装 APK: - $ adb unroot && adb install GHSAFM-version-default-debug.apk
调试设备
首次启动示例应用时,您会看到一个对话框,其中包含指向 Sample App for Matter Codelab 的链接。 如果您选择不再显示此消息,则可以随时在应用的“管理”部分更新偏好设置,以重新显示该对话框。
在接下来的步骤中,您将向本地 Android 结构添加 Matter 设备,以及仅对示例应用本地有效的开发结构。
什么是 Matter 面料?

Matter 织网是指在家庭网络中的多个设备之间建立共享信任域,让这些设备能够相互通信。
设备可以有一个或多个与平台、应用或一组相互交互的设备对应的功能块。功能区具有唯一的 ID,设备共享同一组凭据和证书授权机构 (CA)。这些凭据是在 Matter 调试期间分配的。
如需调试 Matter 设备,请完成以下步骤:
- 点按“添加设备”按钮,开始调试流程。  
- 接下来,控制权会转移到 Google Play services,该 activity 是通过对 Mobile SDK 的调用启动的。如需建立所有权证明,请扫描二维码或点按使用配对码。  
- 配置完成后,输入设备名称,然后点按完成。 
您的设备现已连接到本地 Android 结构和开发结构。
在调试设备时,所有调试工作和相关界面均由 Play services 处理。这样可提供一致的用户体验,并避免处理敏感权限(例如 Wi-Fi 和 Thread 凭据)。
控制设备
开发结构会创建凭据,以便直接从示例应用控制 Matter 设备。
在主屏幕上,您可以将设备切换为开启或关闭状态。点按设备可访问设备详情。

共享设备
在 Matter 规范中,共享设备称为多管理员流程。将设备委托给示例应用后,您可以轻松地与其他生态系统共享该设备。
如需与其他生态系统共享 Matter 设备,您需要在 Android 设备上安装其他平台。此外部平台将成为目标委托方。我们创建了另一个示例应用实例,您可以将其用作目标调试器。
- 前往 Sample App for Matter GitHub 代码库中的“版本”部分。对于最新版本,请在“Assets”部分中找到名为 - GHSAFM-version-targetcommissioner-debug.apk的 APK。请勿选择- default。
- 安装目标调试器。 - $ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
- 在主屏幕上,点按相应设备以显示设备信息。点按分享。  
示例应用会调用 Mobile SDK Share API,然后控制权再次转移到 Play services。
系统会显示分享表单,以便您选择要将设备与哪个应用或平台配对。此界面提供了两种共享设备的方式:
- 通过设置代码手动进行,该代码将与目标调试器应用共享
- 使用已注册为 Matter 专员的本地 Android 应用
目标调试器应用标记为 GHSAFM-TC。点按此示例应用实例以分享您的设备。
接下来,外部应用(目标调试器)完成将设备调试到其自有功能区中的操作。
设置
在主屏幕上,点击“设置”图标 。您可以在此处选择更新用户偏好设置、获取帮助以及详细了解该应用。

半页通知
在“设置”界面中,您可以选择针对 Matter 设备停用主动发现可佣金化内容的通知。
如果您的应用提供自己的 Matter 发现或调试流程,您可能希望禁止显示这些通知,以防止中断。如需了解详情,请参阅禁止显示可赚取佣金的发现通知。
开发者实用程序
您还可以从“设置”界面访问开发者实用程序。
如需在 Logcat 中查看设备和用户偏好设置 DataStore 代码库的内容,请完成以下步骤:
- 点击记录代码库内容。 
- 点击对话框中的确定,然后检查 Logcat。 
反馈和帮助
如需提交您对如何改进 Sample App for Matter 开发体验的想法或反馈,请填写我们的反馈表单。
如果您在运行 Sample App for Matter 时遇到问题,请尝试完成以下步骤来验证您的环境:
如果您在使用示例应用时遇到问题或发现代码 bug,可以向 GitHub 代码库中的问题跟踪器提交问题:
如需就技术问题获得 Google 的官方指导,请使用智能家居开发者论坛:
如需从社区获取技术支持,请在 Stack Overflow 上使用 google-smart-home 标记: