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 уровня 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) .
Установить
Перейдите в раздел «Releases» в репозитории Sample App for Matter на GitHub. Для последней версии найдите в разделе «Assets» 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, а также инфраструктуру разработки, которая будет локальной только для примера приложения.
Что такое ткани Matter?
Matter Fabric — это общая область доверия между устройствами в домашней сети, которая позволяет им взаимодействовать друг с другом.
Устройства могут иметь одну или несколько фабрик, соответствующих платформе, приложению или группе взаимодействующих устройств. Фабрики имеют уникальный идентификатор, а устройства используют один и тот же набор учётных данных и центр сертификации ( CA ). Эти учётные данные назначаются при вводе в эксплуатацию Matter .
Чтобы ввести устройство Matter в эксплуатацию, выполните следующие действия:
Нажмите кнопку
устройство», чтобы начать процесс ввода в эксплуатацию.Затем управление передаётся Google Play services , которые запускаются через вызов Mobile SDK . Чтобы подтвердить владение, отсканируйте QR-код или нажмите « Использовать код сопряжения» .
После завершения ввода в эксплуатацию введите имя устройства , затем нажмите « Готово» .
Теперь ваше устройство подключено как к локальной инфраструктуре Android, так и к инфраструктуре разработки.
Все работы по вводу в эксплуатацию и соответствующие экраны выполняются Play services при вводе устройств в эксплуатацию. Это обеспечивает единообразный пользовательский интерфейс и устраняет необходимость в обработке конфиденциальных разрешений, например, учётных данных Wi-Fi и Thread.
Устройства управления
Структура разработки создает учетные данные для управления устройствами Matter прямо из примера приложения.
На главном экране вы можете включить или выключить устройство. Нажмите на устройство, чтобы получить доступ к его информации.
Поделиться устройствами
В спецификации Matter совместное использование устройства называется многоадминистративным потоком . После того, как устройство будет подключено к примеру приложения, вы сможете легко поделиться им с другими экосистемами.
Чтобы использовать ваше устройство Matter в других экосистемах, вам потребуется установить на вашем Android-устройстве другую платформу. Эта внешняя платформа станет целевым комиссаром . Мы создали ещё один экземпляр приложения-примера, который вы можете использовать в качестве целевого комиссара.
Перейдите в раздел «Releases» в репозитории Sample App for Matter на GitHub. Для последней версии найдите в разделе «Assets» APK-файл с именем
GHSAFM- version -targetcommissioner-debug.apk
. Не выбирайте файлdefault
.Назначьте целевого комиссара.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
На главном экране коснитесь устройства, чтобы отобразить информацию об устройстве. Нажмите « Поделиться» .
Пример приложения вызывает API Mobile SDK Share, и управление снова передается Play services .
Откроется панель общего доступа, где вы сможете выбрать приложение или платформу, к которой хотите подключить устройство. На этом экране доступны два способа поделиться устройством:
- Вручную с помощью кода настройки, который будет передан в приложение целевого комиссара
- С помощью локального приложения для Android, которое зарегистрировано в качестве уполномоченного Matter
Приложение Target Commissioner имеет название GHSAFM-TC . Нажмите на этот экземпляр приложения, чтобы поделиться своим устройством.
Затем внешнее приложение (целевой комиссар) завершает ввод устройства в эксплуатацию в своей собственной структуре.
Настройки
На главном экране нажмите значок
. Здесь вы можете обновить пользовательские настройки, получить справку и узнать больше о приложении.Уведомление в формате Halfsheet
На экране настроек вы можете отключить уведомления об обнаружении устройств Matter с возможностью упреждающего заказа.
Если ваше приложение предоставляет собственный поток обнаружения или заказа Matter , вы можете отключить эти уведомления, чтобы избежать прерываний. Подробнее см. в разделе «Отключение уведомлений о заказываемом обнаружении» .
Утилиты разработчика
С экрана настроек вы также можете получить доступ к утилитам разработчика .
Чтобы просмотреть содержимое репозиториев Device и User Preferences DataStore в Logcat , выполните следующие действия:
Нажмите Содержимое репозиториев журналов .
Нажмите кнопку «ОК» в диалоговом окне, затем проверьте Logcat .
Обратная связь и помощь
Чтобы отправить свои мысли или отзывы о том, как мы можем улучшить процесс разработки с помощью Sample App for Matter , заполните нашу Форму обратной связи.
Если у вас возникли проблемы с Sample App for Matter , попробуйте выполнить следующие шаги для проверки вашей среды:
Если у вас возникли вопросы по использованию примера приложения или вы обнаружили ошибку в коде, вы можете отправить сообщение о проблемах в систему отслеживания проблем в репозитории GitHub:
Чтобы получить официальные рекомендации от Google по техническим вопросам, посетите форум разработчиков Smart Home:
Чтобы получить техническую поддержку от сообщества, используйте тег google-smart-home
на Stack Overflow: