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,该进程是从对 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
标记: