Плагин Google Home для Android Studio

Matter ; Home API

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

Плагин Google Home для Android Studio

Уведомление о безопасности

Чтобы запретить Android Studio хранить секреты и пароли, выполните следующие действия:

  1. Нажмите File (Файл), а затем Settings (Настройки).
  2. В разделе Appearance & Behavior (Внешний вид и поведение) разверните System Settings (Системные настройки) и нажмите Passwords (Пароли).
  3. Выберите Не сохранять, забывать пароли после перезапуска.
Плагин Google Home для Android Studio

Функции

Симулятор Ассистента

Чтобы проверить, правильно ли работают ваши устройства умного дома в экосистеме Google Home, вы можете в любое время взаимодействовать с Assistant Simulator, не выходя из Android Studio.

Assistant Simulator позволяет легко управлять устройствами, вводя запросы, например "Включи свет". В Android Studio Assistant Simulator отвечает текстовыми сообщениями на ваши команды, например "Хорошо, включаю свет".

Тестирование с помощью симулятора Ассистента

Просмотр Cloud Logging

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

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

Просмотр Cloud Logging

Пакетные высказывания

Ответы Assistant Simulator на одно высказывание не являются детерминированными. Например, ответ может быть одной из следующих фраз:

  • Хорошо, включаю два светильника.
  • Хорошо, включаю два светильника.
  • Хорошо, включаю два светильника.
  • Хорошо, включаю два светильника.

Чтобы запустить автоматические тесты и проверить, как интеграции Google работают с различными ответами, вы можете отправить пакетные высказывания в Assistant Simulator, запустив скрипты высказываний. После сохранения скрипта вы можете собирать ответы и выполнять несколько тестов для своих запросов.

Home Graph Viewer

Home Graph Viewer позволяет просматривать состояние устройств и запускать набор тестов Google Home в браузере.

Просмотр журналов Android Debug Bridge (adb)

Adb Log Viewer – это инструмент для просмотра и анализа файлов журналов, например журналов устройств Matter, Google Home и Android.

Установить

Чтобы установить Google Home Plugin в Android Studio, выполните следующие действия:

  1. Скачайте или обновите приложение "Android Studio". Скачать Android Studio
  2. Выберите File (Файл) > Settings (Настройки) (Android Studio > Preferences (Настройки) в macOS).
  3. В разделе Plugins (Плагины) перейдите в Marketplace (Торговая площадка) и найдите google home.
  4. Установите инструмент и перезапустите Android Studio.

Вы также можете скачать плагин напрямую из JetBrains Marketplace.

Настройка

После установки плагина вам нужно будет выполнить следующие действия, прежде чем вы сможете использовать Assistant Simulator и просматривать Cloud Logging:

Войти с аккаунтом Google

Вы можете войти в аккаунт разработчика на панели Google Home и разрешить Android Studio взаимодействовать с сервисами Google от вашего имени.

  1. Нажмите на вкладку Google Home в вертикальном столбце вкладок в левой части окна Android Studio.

  2. В разделе Sign in with (Войти с помощью) нажмите Google, чтобы запустить браузер.

    Вход с аккаунтом Google в Android Studio
  3. Выберите аккаунт, связанный с устройствами умного дома.

  4. На странице авторизации Войти с аккаунтом Google нажмите Разрешить.

  5. Закройте окно браузера и вернитесь в Android Studio.

Вы войдете в аккаунт, и появится кнопка Выйти.

Выберите облачный проект

После входа выберите Проект в раскрывающемся списке. Чтобы отфильтровать список проектов, введите выражение Фильтр, например matter, и нажмите Enter.

В раскрывающемся списке Проект загружаются первые 100 проектов, соответствующих вашему фильтру. Выбранные настройки сохраняются при выходе из Android Studio.

Выбор проекта

Дополнительную информацию о фильтрах проектов можно найти в разделе Параметры запросов справочной документации Google Cloud.

Как использовать симулятор Ассистента

Чтобы открыть Assistant Simulator в Android Studio, нажмите Панель высказываний на панели Google Home Plugin.

Открыть панель высказываний

Отправлять запросы в Assistant Simulator можно разными способами. Далее мы рассмотрим каждый вариант.

Вводите запросы и получайте ответы

Чтобы взаимодействовать с Assistant Simulator, введите запрос и нажмите Ввод.

Чтобы повторно отправить запрос, нажмите на значок в конце запроса.

Отправив один или несколько запросов, нажмите Повторить, чтобы выполнить запросы ещё раз и проверить ответы. На панели Высказывания в кеше хранятся ваши запросы и ответы. При нажатии кнопки Повторить в этот внутренний кеш добавляются только новые ответы, а запросы не дублируются.

Как воспроизводить высказывания в симуляторе Ассистента

Нажмите Сохранить, чтобы сохранить запросы и ответы, которые вы ввели на панели Высказывания. Взаимодействия преобразуются в формат 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 в новой вкладке. В поле Select Path (Выбрать путь) можно выбрать файл или папку. Если вы выберете папку, Collect и Test будут работать со всеми файлами .json в этой папке.

Вы можете открыть несколько вкладок для одного или разных файлов, например lights, lights(1) и plug.

В строке состояния показывается результат последнего теста (если применимо), желтая или зеленая точка, указывающая, был ли собран файл, и путь к файлу высказывания .json. После того как вы нажмете Collect (Собрать), Assistant Simulator выполнит ваши запросы. Вы получите уведомление, когда будет получен новый ответ, а в строке состояния будет отображаться счетчик, пока ваши запросы обрабатываются.

Как собирать высказывания с помощью симулятора Ассистента

Когда сбор завершится, в строке состояния появится зеленая галочка перед путем к файлу .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 не будет отмечен как собранный.

Тестирование пакета высказываний

После того как вы соберете ответы, нажмите Проверить, чтобы повторно выполнить запросы и проверить ответы и журналы. При тестировании пакета высказываний Assistant Simulator ожидает ответы, сохраненные в файле JSON. Если в результате тестирования возвращается ответ, который не был собран, вы получите уведомление, похожее на следующее:

Expected one of: "Got it, turning on 2 lights."

Как запускать высказывания в симуляторе Ассистента

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

Как запускать высказывания в симуляторе Ассистента

Просмотр Cloud Logging

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

Вкладки Cloud Logging

Поисковые фразы

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

Запрос Cloud Logging

Выберите Использовать QL, чтобы использовать язык запросов к журналам.

Язык запросов Cloud Logging

Ниже приведены примеры запросов на языке 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.

Просмотр Cloud Logging

Просмотр Home Graph и запуск тестов

Чтобы посмотреть список устройств, на панели Google Home Plugin выберите Home Graph.

Нажмите Обновить, чтобы посмотреть название устройства, идентификатор устройства и тип устройства для устройств, связанных с выбранным проектом. Вы можете открыть несколько панелей Google Home Graph для разных проектов.

После загрузки устройств нажмите на любую запись, чтобы развернуть полные полезные данные JSON.

Полезная нагрузка Home Graph в формате JSON

Вы также можете использовать кнопки Развернуть и Свернуть, чтобы показать или скрыть полезную нагрузку JSON для устройств.

Развернуть и свернуть JSON в Home Graph

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

Запуск тестов Home Graph

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

Завершенные тесты Home Graph

Просмотр журналов Android Debug Bridge (adb)

Чтобы открыть вкладку проекта в окне инструмента Adb Log, нажмите на команду Adb Log на панели инструментов плагина Google Home (слева). Вы можете открыть отдельные вкладки Adb Log для каждого из файлов журнала. Чтобы удалить вкладку, нажмите на значок .

В поле Выбрать укажите компонент, для которого нужно посмотреть журнал, а в раскрывающемся списке Серьезность – уровень серьезности записей.

Записи в выбранном журнале adb можно отфильтровать с помощью поля Фильтр и модификаторов С учетом регистра или Регулярное выражение.

Кроме того, вы можете:

  • Чтобы найти определенные записи, используйте поле Найти и команды Найти далее (значок ) и Найти ранее (значок ).
  • При необходимости используйте модификаторы С учетом регистра или Регулярное выражение.
  • Перейти к строке – перейти к определенной строке (по номеру) в журнале.

Выберите Нумерованный, чтобы посмотреть строки журнала с номерами. Чтобы посмотреть необработанные записи журнала, выберите Необработанные.

Просмотр журналов ADB

Где ещё можно найти информацию по теме и как связаться с нами

Нажмите Ресурсы, чтобы посмотреть список инструментов и ресурсов для разработчиков.

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

Отправить отзыв