适用于 Android 的 Home Mobile SDK

为了帮助您构建与 Matter 设备交互的 Android 应用,Google 开发了 Google Home Mobile SDKMobile SDK 包含两个核心 API,可让您的应用与 Google Fabric 委托和共享设备。

将设备添加到 Google Fabric 后,用户可以通过 Google Home app (GHA)、Android 电源控制、语音和 Nest 触摸屏设备控制其设备。

借助 Mobile SDK,您还可以定义自定义配置服务,以便将设备配置到其他 Matter 生态系统。

将 Mobile SDK 集成到您的 Android 应用中

首先,请完成以下步骤:

  1. 按照设置 Google Play services 中提供的说明操作。

  2. Play services 依赖项添加到 build.gradle 文件中:

    implementation 'com.google.android.gms:play-services-home:16.0.0-beta1'
    

确保模块传送

Play services home 模块是可选的,因此只有当设备上的应用在其 AndroidManifest.xml 文件中指定了适当的 Play services 模块依赖项时,用户设备上才会提供 Matter 功能。

GHAGoogle Home Sample App for Matter 都在其清单中添加了此模块依赖项。如果您要将 Mobile SDK 集成到 Android 应用中,为了确保为应用用户提供 Matter 支持,请将以下 service 代码块添加到 AndroidManifest.xml 文件中的 application 声明中:

<service android:name="com.google.android.gms.metadata.ModuleDependencies"
    android:enabled="false"
    android:exported="false">
    <intent-filter>
        <action android:name="com.google.android.gms.metadata.MODULE_DEPENDENCIES" />
    </intent-filter>

    <meta-data android:name="home:0:preferred" android:value=""/>
</service>

只有搭载 Play services 22.50.14 或更高版本的 Android 设备支持此功能。

如需查看示例实现,请参阅 Sample App for Matter 的清单

您可以使用 ModuleInstallClient 在运行时检查 Home 模块的可用性。如需了解详情,请参阅 使用 ModuleInstallClient 确保 API 可用性页面。

调用其他 Android 应用

如果您使用的是 Android 11 或更高版本,则需要在 AndroidManifest.xml 中添加以下 queries 代码块,以便您的应用可以调用其他应用。

<queries>
    <!-- For GMS Core/Play service -->
        <package android:name="com.google.android.gms" />
        <package android:name="com.android.vending" />
    <!-- End of GMS Core/Play service-->
</queries>

如需了解详情,请参阅 Android 上的软件包可见性过滤一文。

使用适用于 Matter 的 Google Home 示例应用

如需了解 Mobile SDK 在 Android 应用中的工作原理,请尝试使用我们的 Sample App for Matter

试用 Sample App for Matter

构建自己的应用

为帮助您快速上手,我们开源了 Sample App for Matter 并提供了一个配套的 Codelab,让您能够针对自己的 Android 项目自定义我们的示例代码。

前往 Sample App for Matter Codelab

资源

如需详细了解 Mobile SDK,请参阅 API 参考文档

如需了解此 SDK 如何处理最终用户数据,请参阅 Home Mobile SDK Google Play 数据安全部分