Google Home Plugin for Android Studio разработан и создан для разработчиков платформы Google Home. Этот плагин предоставляет доступ к Google Assistant Simulator , облачному логированию и другим инструментам, упрощающим процесс разработки умного дома.

Уведомление о безопасности
Чтобы предотвратить сохранение секретов и паролей в Android Studio , выполните следующие действия:
- Нажмите «Файл» , затем «Настройки...» .
- В разделе «Внешний вид и поведение» разверните «Системные настройки» , затем нажмите «Пароли» .
- Выберите « Не сохранять, забывать пароли после перезагрузки».

Функции
Симулятор помощника
Чтобы проверить, корректно ли ваши устройства умного дома работают с экосистемой Google Home, вы можете в любое время взаимодействовать с Assistant Simulator не выходя из Android Studio .
Assistant Simulator позволяет легко управлять устройствами, вводя запросы, например: «Включить свет». В Android Studio Assistant Simulator отвечает текстовыми сообщениями на основе ваших команд, например: «Хорошо, включаю свет».

Просмотр облачного логирования
Google Cloud Logging предоставляет отладочную информацию и ключевые метрики, позволяющие получить представление об использовании вашего действия. Для упрощения разработки Google Home Plugin отображает сообщения Cloud Logging в режиме реального времени прямо рядом с вашим кодом во время устранения неполадок.
Вы можете отображать журналы в режиме реального времени или выбрать диапазон дат.

Пакетные высказывания
Ответы Assistant Simulator на отдельные реплики не являются детерминированными. Например, ответом может быть любая из следующих фраз:
- Понял, включаю 2 лампочки.
- Да, включу 2 лампы.
- Понял, включаю две лампочки.
- Хорошо, включаю 2 лампы.
Для запуска автоматизированных тестов и проверки того, как ваши интеграции с Google работают с этими различными ответами, вы можете отправлять пакеты реплик в Assistant Simulator , запуская скрипты реплик. После сохранения скрипта вы можете собирать ответы и запускать несколько тестов для ваших запросов.
Главная страница | Просмотр графиков
Home Graph Viewer позволяет отображать состояние ваших устройств и запускать набор тестов Google Home Test Suite прямо в браузере.
Программа просмотра логов Android Debug Bridge (adb)
Adb Log Viewer — это инструмент для просмотра и анализа файлов журналов, например, файлов журналов устройств Matter , журналов Google Home и журналов Android.
Установить
Чтобы установить Google Home Plugin в Android Studio , выполните следующие действия:
- Загрузите или обновите Android Studio . Скачать Android Studio
- Перейдите в меню Файл > Настройки ( Android Studio > Настройки на MacOS).
- В разделе «Плагины» перейдите в Marketplace и найдите
google home. - Установите инструмент и перезапустите Android Studio .
Вы также можете скачать плагин напрямую из JetBrains Marketplace .
Настраивать
После установки плагина вам необходимо выполнить следующие шаги, прежде чем вы сможете использовать Assistant Simulator и просматривать данные облачного логирования:
Войти через Google
Вы можете войти в свою учетную запись разработчика через панель Google Home, разрешив Android Studio взаимодействовать со службами Google от вашего имени.
В окне Android Studio в вертикальной колонке вкладок слева нажмите вкладку Google Home .
Для входа через Google нажмите на значок Google , чтобы открыть браузер.

Выберите учетную запись, связанную с вашими устройствами умного дома.
На странице авторизации «Вход через Google» нажмите «Разрешить» .
Закройте окно браузера и вернитесь в Android Studio .
Теперь вы должны быть авторизованы и иметь возможность выйти из системы .
Выберите облачный проект
После входа в систему выберите проект из выпадающего списка. Чтобы отфильтровать список проектов, введите выражение фильтра , например, matter , а затем нажмите Enter .
В выпадающем списке «Проект» загружаются первые 100 проектов в соответствии с выбранным вами фильтром . Ваш выбор сохраняется при выходе из Android Studio .

Для получения справки по фильтрам проекта обратитесь к разделу «Параметры запроса» в справочнике Google Cloud.
Воспользуйтесь симулятором помощника.
Чтобы открыть Assistant Simulator в Android Studio , щелкните панель «Речевые высказывания» на панели Google Home Plugin .

Существует несколько способов отправки запросов в Assistant Simulator . Далее мы рассмотрим каждый из них.
Вводите запросы и собирайте ответы.
Для взаимодействия с Assistant Simulator введите свой запрос и нажмите Enter.
Вы можете повторно отправить запрос, нажав на значок повторной отправки запроса в конце запроса.
После отправки одного или нескольких запросов нажмите кнопку «Воспроизвести , чтобы повторно выполнить запросы и проверить ответы. Панель «Высказывания» отслеживает ваши запросы и ответы в сохраненном кэше. Функция «Воспроизвести» добавляет в этот внутренний кэш только новые ответы и не будет дублировать ваши запросы каждый раз, когда вы нажимаете кнопку.

Нажмите » , чтобы сохранить запросы и ответы, введенные вами на панели «Высказывания» . Ваши взаимодействия будут преобразованы в формат JSON в следующем виде:
-
ask: Ваш запрос. -
answers: Множество возможных ответов Assistant Simulator .
Вы можете редактировать этот JSON-файл в Android Studio .
{
"collected": false,
"lines": [
{
"ask": "turn lights on",
"answers": [
"OK, turning 2 lights on.",
"Sure, turning on 2 lights."
]
}
]
}
Соберите пакетные ответы
На панели Google Home Plugin нажмите «Файл высказываний» , чтобы открыть сохраненные JSON-файлы в новой вкладке. В поле «Выбрать путь» вы можете выбрать файл или папку. Если вы выберете папку, функция «Собрать и протестировать» будет работать со всеми .json файлами высказываний в этой папке.
Вы можете открыть несколько вкладок для одного и того же файла или для разных файлов, например, lights , lights(1) и plug .
В строке состояния отображается результат вашего последнего теста (если применимо), желтая или зеленая точка, указывающая на то, был ли файл собран, и путь к файлу .json с текстом высказывания. После нажатия Собрать » Assistant Simulator выполнит ваши запросы. Вы получите уведомление, когда будет собран новый ответ, а в строке состояния будет отображаться счетчик во время обработки ваших запросов.

После завершения процесса Collect строка состояния обновляется, отображая зеленую галочку напротив пути к вашему файлу .json , а ваши файлы с репликами заполняются возможными вариантами ответов.

{
"collected": true,
"lines": [
{
"ask": "turn lights on",
"answers": [
"OK, turning 2 lights on.",
"Sure, turning on 2 lights.",
"Sure, turning 2 lights on.",
"Got it, turning 2 lights on.",
"Alright, turning on 2 lights.",
"OK, turning on 2 lights.",
"Got it, turning on 2 lights.",
"Alright, turning 2 lights on."
]
}
]
}
Если вы прервете сбор данных раньше времени, путь к вашему файлу .json не будет помечен как собранный.
Тестовые пакеты высказываний
После сбора ответов нажмите кнопку « Тест» Test), чтобы воспроизвести запросы и проверить ответы и журналы. При тестировании пакетных запросов Assistant Simulator ожидает ответы, сохраненные в вашем JSON-файле. Если ваш тест возвращает ответ, который не был собран, вы получите уведомление, похожее на следующее:
Expected one of: "Got it, turning on 2 lights."

Этот сценарий указывает на неудачный тест. В противном случае, Assistant Simulator выполнит каждый из ваших запросов и вернет ответ. Если тест прошел успешно, в строке состояния отобразится .

Просмотр облачного логирования
Чтобы открыть вкладку проекта в окне инструментов Cloud Logs, нажмите Cloud Logs на панели Google Home Plugin . Вы можете открыть отдельные вкладки Cloud Logs для каждого из ваших проектов.

Ключевые слова для запроса
Для выбранного проекта вы также можете фильтровать журналы, используя поле «Запрос» . Например, чтобы отфильтровать журналы по ключевому слову light :

Выберите «Использовать QL» , чтобы использовать язык запросов для логирования .

Вот несколько примеров QL-запросов, которые помогут вам начать:
severity = (DEBUG OR INFO OR NOTICE OR WARNING OR ERROR OR CRITICAL OR ALERT OR EMERGENCY) AND resource.type="assistant_action_project" AND timestamp > "2022-04-07T00:40:18Z"
jsonPayload.executionLog.executionResults.actionResults.action.trait = "TRAIT_ON_OFF"
jsonPayload.executionLog.executionResults.actionResults.action.actionType = "ONOFF_ON"
Запросы по дате и времени
Запросы к журналам по дате также являются необязательными и могут быть включены, нажав «После» и «До» . Вы можете ввести дату и время в предоставленном текстовом поле, например, 5/11/22, 12:37 PM , или использовать для выбора даты, а затем ввести время в текстовое поле.
- Чтобы выбрать дату после
5/1/22, выберите «После» и нажмите на значок даты . - Чтобы выбрать дату до
5/1/22, выберите «До» и нажмите на значок даты . - Чтобы выбрать дату в промежутке между
5/1/22и6/30/22, выберите «До и после» и выберите нужные даты с помощью значка даты .
Выберите «В режиме реального времени» , чтобы получать журналы проекта в реальном времени. Нажмите «Стоп» , чтобы завершить трансляцию в режиме реального времени.
Уровень серьезности
Вы также можете выбрать минимальный уровень серьезности из выпадающего списка.
Результаты запроса
Нажмите кнопку выборка» , чтобы отправить параметры запроса.
После загрузки логов щелкните любую запись , чтобы развернуть полный JSON-контент. Щелкните еще раз слева , чтобы отобразить полное сообщение.
При желании вы можете ввести ключевое слово в поле «Фильтр» , чтобы сузить результаты поиска. Нажмите на x , чтобы снять фильтр и вернуться к исходным результатам.

Просмотреть график на главной странице и запустить тесты
Чтобы отобразить список ваших устройств, выберите Home Graph на панели Google Home Plugin .
Нажмите « Обновить , чтобы отобразить имя устройства , идентификатор устройства и тип устройства для устройств, связанных с выбранным проектом. Вы можете открыть несколько панелей Google Home Graph для разных проектов.
После загрузки устройств щелкните любую запись , чтобы развернуть полный JSON-контент.

Также вы можете использовать функции «Развернуть» и «Свернуть» , чтобы отображать и скрывать JSON-данные для ваших устройств.

Чтобы запустить набор тестов для конкретного устройства, нажмите «Тест» . Это запустит набор тестов в вашем браузере, выбрав ваше устройство и подготовив его к тестированию. Нажмите «Начать» и дождитесь результатов теста.

После завершения тестов вы сможете проверить подробности тестирования и просмотреть журналы.

Программа просмотра логов Android Debug Bridge (adb)
Чтобы открыть вкладку проекта в окне инструмента Adb Log, нажмите команду Adb Log на панели инструментов плагина Google Home (слева). Вы можете открыть отдельные вкладки Adb Log для каждого из ваших файлов журналов. Чтобы удалить вкладку, нажмите значок .
Используйте поле «Выбрать» , чтобы выбрать конкретный компонент журнала для просмотра, а раскрывающийся список «Серьезность» — чтобы отобразить только записи с соответствующей степенью серьезности.
Для выбранного вами файла журнала adb вы можете отфильтровать записи с помощью поля «Фильтр» , добавив необязательные модификаторы, учитывающие регистр символов , или регулярные выражения .
Кроме того, вы можете:
- Найдите нужные записи, используя поле «Найти» , а также команды «Найти следующую» (значок ) и «Найти предыдущую» (значок ).
- Используйте необязательные модификаторы, учитывающие регистр символов , или регулярные выражения .
- Перейти к строке — перейти к указанной строке (по номеру) в журнале.
Выберите «Нумерованные» , чтобы просмотреть строки журнала с добавленными номерами. Выберите «Необработанные» , чтобы просмотреть необработанные записи журнала.

Ресурсы и обратная связь
Нажмите «Ресурсы» , чтобы просмотреть список инструментов и ресурсов для разработчиков.
Чтобы поделиться своими мыслями или отзывами о том, как мы можем улучшить процесс разработки Google Home Plugin , нажмите «Обратная связь» .
