Add the Home APIs to your iOS app

To add the Home APIs to an iOS app, you'll need to meet a few prerequisites.

Prerequisites

For development, you'll need a Mac that meets the following requirements:

  • macOS Sonoma or later
  • Xcode 15.3 or later

Create Apple deployment configuration files

First, an app requires that the App Attest capability be enabled. As a result, it cannot be deployed to simulator devices. This requires you to create a provisioning profile with the App Attest entitlement.

Second, it requires the App Groups be enabled for communication between the app and the MatterExtension. This requires you to register an app group identifier.

For more details, see Apple's Create a development provisioning profile on provisioning profiles.

The following outlines the minimum steps required to deploy an app:

  1. Create an app group identifier for your app to communicate with the MatterExtension.
    1. Sign in to the Apple Developer Portal.
    2. Add an app group identifier. For example, it could be formatted as group.com.company.commissioning.
  2. Register your test device to the developer account.
  3. Create a profile for your app target.

    1. Decide on an application bundle identifier for your app. The identifier should be unique and descriptive. For example, it could be formatted as com.company.MyCompanyApp. This identifier will be used throughout the rest of this section.
    2. Register your App ID. When prompted, add the App Attest and App Groups capability.
    3. Edit the newly created App ID and configure the App Groups capability to add the registered app group identifier.

    4. Create a development provisioning profile for your app development. Associate it to your newly created App ID and selected test devices. Ensure you have a developer certificate to sign the app with.

  4. Create a profile for your MatterExtension target.

    1. Decide on an application bundle identifier for your MatterExtension. The identifier should be inherited from the app identifier. For example, it could be formatted as com.company.MyCompanyApp.MatterExtension.
    2. Register your App ID. When prompted, add the App Group capability.
    3. Edit the newly created App ID and configure the App Groups capability to add the registered app group identifier created in the previous steps.
    4. Create a development provisioning profile for MatterExtension.

Supported hubs

Only certain Google Nest hubs feature support for the Home APIs.

Table: Google Nest hubs with Home APIs support
Device OS Thread Border Router support Google Store
Google Home Cast
Google Nest Audio Cast
Google Nest Hub Cast
Google Nest Hub (2nd gen) Fuchsia
Google Nest Hub Max Fuchsia
Google Nest Mini Cast
Google TV Streamer (4k) Android

Set up the iOS SDK

In order to develop applications with the Home APIs for iOS, you need to download and host the libraries locally.

To download the Home APIs iOS SDK, you must first be signed into Google Home Developers.

Sign in now!