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:
- Create an app group identifier for your app to communicate with the
MatterExtension
.- Sign in to the Apple Developer Portal.
- Add an app group identifier. For example, it could be
formatted as
group.com.company.commissioning
.
- Register your test device to the developer account.
Create a profile for your app target.
- 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. - Register your App ID. When prompted, add the App Attest and App Groups capability.
Edit the newly created App ID and configure the App Groups capability to add the registered app group identifier.
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.
- If you haven't created one yet, see Create Developer ID certificates for instructions.
- Decide on an application bundle identifier for your app.
The identifier should be unique and descriptive. For example, it could be
formatted as
Create a profile for your
MatterExtension
target.- Decide on an application bundle identifier for your
MatterExtension
. The identifier should be inherited from the app identifier. For example, it could be formatted ascom.company.MyCompanyApp.MatterExtension
. - Register your App ID. When prompted, add the App Group capability.
- Edit the newly created App ID and configure the App Groups capability to add the registered app group identifier created in the previous steps.
- Create a development provisioning profile
for
MatterExtension
.
- Decide on an application bundle identifier for your
Supported hubs
Only certain Google Nest hubs feature support for the Home APIs.
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.