
Google Home Sample App for Matter использует Google Home Mobile SDK для создания Android-приложения, аналогичного Google Home app (GHA) . Это примерное приложение предоставляет следующие возможности:
- Подключите физические и виртуальные устройства Matter к локальной среде Android.
- Подключите физические и виртуальные устройства к среде разработки.
- Управляйте устройствами в вашей среде разработки, например, включайте свет.
- Функции управления несколькими администраторами позволяют совместно использовать устройства в среде разработки с другими приложениями, и наоборот, включать в среду разработки устройства, совместно используемые другими приложениями.
- Утилиты для разработчиков
В этом руководстве описано, как установить Sample App for Matter APK и использовать его для ввода в эксплуатацию, управления и совместного использования устройств Matter .
Чтобы скачать исходный код, узнать, как интегрировать Mobile SDK и настроить экраны в Android Studio, попробуйте наш Sample App for Matter в рамках практического занятия.
Перейдите к Sample App for Matter .
Предварительные требования
- Для тестирования требуется устройство под управлением Android O (8.1, API level 27) или более новой версии. Чтобы убедиться в наличии последней версии поддержки Matter на вашем устройстве, ознакомьтесь с руководством по проверке модулей и служб Matter .
- Создайте устройство Matter с возможностью включения/выключения. Это демонстрационное приложение работает с виртуальным устройством и ESP32.
- Виртуальное устройство Matter (MVD) . Чтобы свести к минимуму проблемы, связанные с окружением, мы настоятельно рекомендуем начать с использования MVD. Если вы когда-либо столкнетесь с проблемами, их будет гораздо проще исследовать, если использовать демонстрационное приложение с MVD.
- Создайте виртуальное устройство Matter с помощью приложения
rootnode_dimmablelight_bCwGYSDpoe. При создании интеграции Matter в Google Home Developer Console используйте0xFFF1в качестве идентификатора поставщика и0x8000в качестве идентификатора продукта. - Создайте устройство Espressif с помощью
all-clusters-app. При создании интеграции Matter в Developer Console используйте0xFFF1в качестве идентификатора поставщика и0x8001в качестве идентификатора продукта.
Для ввода в эксплуатацию и управления устройствами с помощью Sample App for Matter вам не понадобится концентратор, например, Google Nest Hub (2nd gen) .
Установить
Перейдите в раздел «Релизы» в репозитории GitHub Sample App for Matter . Чтобы найти самый последний релиз, в разделе «Ресурсы» найдите APK-файл с именем
GHSAFM- version -default-debug.apk. Не выбирайтеtargetcommissioner.Установите Android Debug Bridge (adb):
Подключите ваше Android-устройство через USB и включите передачу файлов , затем установите APK-файл:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Комиссионные устройства
При первом запуске демонстрационного приложения появится диалоговое окно со ссылкой на Sample App for Matter . Если вы выберете « Больше не показывать это сообщение» , вы сможете в любой момент снова отобразить диалоговое окно, обновив свои настройки в разделе «Администрирование» приложения.
На следующих шагах вы добавите устройство Matter в локальную среду Android Fabric, а также в среду разработки, локальную только для тестового приложения.
Что такое ткани Matter?

Сеть Matter Fabric — это общая область доверия между устройствами в домашней сети, которая позволяет им взаимодействовать друг с другом.
Устройства могут иметь одну или несколько сетей, соответствующих платформе, приложению или группе взаимодействующих устройств. Сети имеют уникальный идентификатор, и устройства используют один и тот же набор учетных данных и центр сертификации ( ЦС ). Эти учетные данные назначаются во время ввода Matter в эксплуатацию.
Для ввода устройства Matter в эксплуатацию выполните следующие шаги:
Нажмите кнопку Добавить устройство», чтобы начать процесс ввода в эксплуатацию.

Далее управление передается Google Play services , которые запускаются посредством вызова Mobile SDK . Для подтверждения владения отсканируйте QR-код или нажмите « Использовать код сопряжения» .

После завершения процесса ввода в эксплуатацию введите имя устройства , затем нажмите «Готово» .
Ваше устройство теперь подключено как к локальной среде Android, так и к среде разработки.
Все работы по вводу в эксплуатацию и связанные с ними экраны обрабатываются Play services при вводе устройств в эксплуатацию. Это обеспечивает единообразный пользовательский опыт и устраняет необходимость в обработке конфиденциальных разрешений, например, учетных данных Wi-Fi и Thread.
Устройства управления
В среде разработки создаются учетные данные для управления устройствами Matter непосредственно из демонстрационного приложения.
На главном экране вы можете включить или выключить устройство. Коснитесь устройства, чтобы получить доступ к его подробным характеристикам.

Совместное использование устройств
В спецификации Matter совместное использование устройства называется многопользовательским административным потоком . После того, как устройство будет подключено к демонстрационному приложению, вы можете легко поделиться им с другими экосистемами.
Чтобы поделиться своим устройством Matter с другими экосистемами, вам потребуется установить на своё устройство Android другую платформу. Эта внешняя платформа станет целевым заказчиком . Мы создали ещё один экземпляр демонстрационного приложения, который вы можете использовать в качестве целевого заказчика.
Перейдите в раздел «Релизы» в репозитории GitHub Sample App for Matter . Чтобы найти самый последний релиз, в разделе «Ресурсы» найдите APK-файл с именем
GHSAFM- version -targetcommissioner-debug.apk. Не выбирайте версиюdefault.Назначьте целевого комиссара.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apkНа главном экране коснитесь устройства, чтобы отобразить информацию о нем. Коснитесь « Поделиться» .

В демонстрационном приложении используется API обмена данными из Mobile SDK , и управление снова передается Play services .
На экране появляется меню «Поделиться», позволяющее выбрать приложение или платформу, к которой вы хотите подключить устройство. На этом экране доступны два способа поделиться устройством:
- Вручную, с помощью кода настройки, который будет передан в целевое приложение для комиссаров.
- С помощью локального Android-приложения, зарегистрированного в качестве уполномоченного представителя Matter
Приложение для целевого комиссара называется GHSAFM-TC . Нажмите на этот экземпляр демонстрационного приложения, чтобы поделиться своим устройством.
Далее внешнее приложение (целевой заказчик) завершает ввод устройства в эксплуатацию в своей собственной инфраструктуре.
Настройки
На главном экране нажмите значок . Здесь вы можете обновить пользовательские настройки, получить помощь и узнать больше о приложении.

Уведомление о половинном листе
На экране настроек вы можете отключить уведомления о возможности получения комиссионных вознаграждений для устройств Matter .
Если ваше приложение использует собственный процесс обнаружения или ввода в эксплуатацию Matter , вы можете отключить эти уведомления, чтобы предотвратить сбои. Дополнительную информацию см. в разделе «Отключение уведомлений об обнаружении объектов, подлежащих вводу в эксплуатацию» .
утилиты для разработчиков
На экране настроек также можно получить доступ к утилитам для разработчиков .
Для просмотра содержимого хранилищ данных «Устройства и пользовательские настройки» в Logcat выполните следующие действия:
Нажмите «Содержимое репозиториев журналов» .
Нажмите кнопку ОК в диалоговом окне, затем установите флажок Logcat .
Обратная связь и помощь
Чтобы поделиться своими мыслями или отзывами о том, как мы можем улучшить процесс разработки с помощью Sample App for Matter , заполните нашу форму обратной связи.
Если у вас возникли проблемы с Sample App for Matter , попробуйте выполнить следующие шаги для проверки вашей среды:
Если у вас возникли вопросы по использованию демонстрационного приложения или вы обнаружили ошибку в коде, вы можете отправить сообщение об ошибке в систему отслеживания ошибок в репозитории GitHub:
Для получения официальных рекомендаций от Google по техническим вопросам используйте форум разработчиков Smart Home:
Чтобы получить техническую поддержку от сообщества, используйте тег google-smart-home на Stack Overflow: