Google Home Sample App for Matter использует Google Home Mobile SDK для создания приложения Android, похожего на Google Home app (GHA) . Этот пример приложения предоставляет следующие функции:
- Подключите физические и виртуальные устройства Matter к локальной структуре Android.
- Ввод физических и виртуальных устройств в среду разработки
- Управляйте устройствами на вашей ткани для разработки, например, включайте свет
- Функции нескольких администраторов позволяют вам совместно использовать устройства в структуре разработки с другими приложениями и, наоборот, иметь возможность включать в структуру разработки устройства, совместно используемые из других приложений.
- Утилиты разработчика
В этом руководстве описывается, как установить APK Sample App for Matter и использовать его для ввода в эксплуатацию, управления и совместного использования устройств Matter .
Чтобы загрузить исходный код, узнать, как интегрировать Mobile SDK и настроить экраны в Android Studio, попробуйте нашу лабораторию кода Sample App for Matter .
Перейдите в лабораторию кода Sample App for Matter
Предпосылки
- Устройство Android O (8.1, уровень API 27) или более новое, доступное для тестирования. Чтобы убедиться, что ваше устройство поддерживает последнюю версию Matter , ознакомьтесь с руководством по модулям и службам Verify Matter .
- Создайте устройство Matter с возможностями включения/выключения. Этот пример приложения работает с виртуальным устройством и ESP32.
- Создайте виртуальное устройство Matter с помощью приложения
rootnode_dimmablelight_bCwGYSDpoe
. При интеграции Create a Matter в Google Home Developer Console используйте0xFFF1
в качестве идентификатора поставщика и0x8000
в качестве идентификатора продукта. - Создайте устройство Espressif с помощью
all-clusters-app
. Когда вы создаете интеграцию Matter в Developer Console , используйте0xFFF1
в качестве идентификатора поставщика и0x8001
в качестве идентификатора продукта.
- Создайте виртуальное устройство Matter с помощью приложения
Вам не нужен концентратор, например Google Nest Hub (2nd gen) , для ввода в эксплуатацию и управления устройствами с помощью Sample App for Matter .
Установить
Перейдите в раздел Releases в репозитории Sample App for Matter на GitHub. Найдите APK с именем
GHSAFM-1.4.1-default-debug.apk
. Не выбирайтеtargetcommissioner
:Установите Android Debug Bridge (adb):
Подключите устройство Android к USB и включите передачу файлов , затем установите APK:
$ adb unroot && adb install GHSAFM-1.4.1-default-debug.apk
Комиссионные устройства
При первом запуске примера приложения вы увидите диалоговое окно со ссылкой на кодовую лабораторию Sample App for Matter . Если вы выберете «Больше не показывать это сообщение» , вы сможете вернуть это диалоговое окно в любое время, изменив свои настройки в разделе «Администратор» приложения.
На следующих шагах вы добавите устройство Matter в локальную фабрику Android вместе с фабрикой разработки, которая является локальной только для примера приложения.
Что такое ткани Matter?
Fabric — это общий домен доверия между устройствами в домашней сети, который позволяет им взаимодействовать друг с другом.
Устройства могут иметь одну или несколько структур, соответствующих платформе, приложению или группе взаимодействующих устройств. Фабрики имеют уникальный идентификатор, а устройства используют один и тот же набор учетных данных и центр сертификации ( ЦС ). Эти учетные данные назначаются при вводе Matter в эксплуатацию.
Чтобы ввести устройство Matter в эксплуатацию, выполните следующие действия:
Нажмите кнопку
устройство», чтобы начать процесс ввода в эксплуатацию.Далее управление передается Google Play services , которые запускаются из обращения к Mobile SDK . Чтобы подтвердить владение, отсканируйте QR-код или коснитесь «Использовать код сопряжения» .
По завершении ввода в эксплуатацию введите Имя устройства , затем нажмите Готово .
Теперь ваше устройство подключено как к локальной фабрике Android, так и к фабрике разработки.
Все работы по вводу в эксплуатацию и связанные с ними экраны обрабатываются Play services при вводе устройств в эксплуатацию. Это обеспечивает согласованное взаимодействие с пользователем и устраняет необходимость обработки конфиденциальных разрешений, например учетных данных Wi-Fi и Thread.
Устройства управления
Ткань разработки создает учетные данные для управления устройствами Matter прямо из примера приложения.
На главном экране вы можете включить или выключить устройство. Коснитесь устройства, чтобы получить доступ к сведениям об устройстве.
Делитесь устройствами
Совместное использование устройства в спецификации Matter называется потоком с несколькими администраторами. Как только устройство будет введено в эксплуатацию в примере приложения, вы можете легко поделиться им с другими экосистемами.
Чтобы поделиться своим устройством Matter с другими экосистемами, на вашем устройстве Android должна быть установлена другая платформа. Эта внешняя платформа становится целевым уполномоченным . Мы создали еще один экземпляр примера приложения, который вы можете использовать в качестве целевого уполномоченного.
Перейдите в раздел Releases в репозитории Sample App for Matter на GitHub. Найдите самый последний APK с именем
GHSAFM-[version]-targetcommissioner
, напримерGHSAFM-1.4.1-targetcommissioner-debug.apk
:Установите целевой комиссар.
$ adb unroot && adb install GHSAFM-1.4.1-targetcommissioner-debug.apk
На главном экране коснитесь устройства, чтобы отобразить информацию об устройстве. Коснитесь «Поделиться» .
Пример приложения вызывает Mobile SDK Share API, и управление снова передается Play services .
Отобразится лист общего доступа, позволяющий выбрать приложение или платформу, с которой вы хотите связать устройство. На этом экране представлены два способа совместного использования устройства:
- Вручную с помощью кода настройки, который будет передан целевому приложению комиссара.
- С помощью локального приложения для Android, зарегистрированного в качестве комиссара Matter .
Приложение целевого уполномоченного помечено как GHSAFM-TC . Коснитесь этого экземпляра примера приложения, чтобы поделиться своим устройством.
Затем внешнее приложение (целевой уполномоченный) завершает ввод устройства в эксплуатацию в своей собственной структуре.
Настройки
На главном экране щелкните значок настроек
. Здесь у вас есть возможность обновить пользовательские настройки, получить помощь и узнать больше о приложении.Уведомление о половине листа
На экране «Настройки» вы можете отключить упреждающие комиссионные уведомления об обнаружении для устройств Matter.
Если ваше приложение предоставляет собственный поток обнаружения или ввода в действие Материи, вы можете пожелать подавить эти уведомления, чтобы предотвратить прерывания. Дополнительную информацию см. в разделе Подавление уведомлений об обнаружении, подлежащих комиссионному вознаграждению .
Утилиты разработчика
На экране настроек вы также можете получить доступ к утилитам разработчика .
Чтобы просмотреть содержимое репозиториев Device и User Preferences DataStore в Logcat , выполните следующие действия:
Щелкните Журнал содержимого репозиториев .
Нажмите OK в диалоговом окне, затем проверьте Logcat .
Обратная связь и помощь
Чтобы поделиться своими мыслями или отзывами о том, как мы можем улучшить процесс разработки с помощью Sample App for Matter , заполните форму обратной связи.
Если у вас возникли проблемы с Sample App for Matter , попробуйте выполнить шаги для проверки вашей среды:
Если у вас есть вопросы об использовании примера приложения или вы обнаружили ошибку в коде, вы можете отправить вопросы в средство отслеживания проблем в репозитории GitHub:
Чтобы получить официальное руководство от Google по техническим вопросам, используйте Форум разработчиков умного дома:
Чтобы получить техническую поддержку от сообщества, используйте тег google-smart-home
на Stack Overflow: