Разработка App Actions для Google Assistant

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Разработка App Actions для Google Assistant
Средний
~3-5 дней
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Разработка App Actions для Google Assistant

App Actions — механизм, через который Android-приложение регистрирует поддерживаемые голосовые команды в экосистеме Google Assistant. Пользователь говорит «начни тренировку в [Приложение]» — Assistant запускает нужный экран напрямую, без поиска приложения вручную. Разработка App Actions означает создание capabilities-конфигурации, mapping параметров NLU и обработку intent'ов внутри приложения.

Архитектура App Actions

Центральный файл — shortcuts.xml в res/xml/. Он содержит <capability> элементы, каждый из которых описывает один поддерживаемый Built-in Intent (BII). Файл подключается к манифесту и загружается в Actions Console при публикации.

Структура capability:

<shortcuts xmlns:android="http://schemas.android.com/apk/res/android">
  <capability android:name="actions.intent.START_EXERCISE">
    <intent
      android:targetPackage="com.example.fitness"
      android:targetClass="com.example.fitness.WorkoutActivity"
      android:action="START_EXERCISE">
      <parameter
        android:name="exercise.name"
        android:key="exercise_type"
        android:mimeType="text/plain" />
    </intent>
    <slice-presentation
      android:shortcutId="start_running"
      android:title="Начать пробежку" />
  </capability>
</shortcuts>

exercise.name — параметр BII, который NLU-движок Google извлекает из голосовой команды. Если пользователь сказал «начни пробежку», значение будет running. Activity получает его через intent.getStringExtra("exercise_type").

Типы fulfillment

Android Intent: Activity запускается напрямую через Intent. Самый простой путь, подходит для большинства случаев.

Deep link: вместо класса Activity указывается URL, который обрабатывается через App Links или кастомную URI-схему. Гибче — можно использовать существующую deep link инфраструктуру.

In-app UI через Slices: устаревший подход, Android Slices deprected с Android 11. Не использовать в новых проектах.

Inline inventory

Для BII, которые принимают конкретные значения из закрытого набора (например, список треков, список категорий тренировок), можно объявить <shortcut> с привязкой к capability. Assistant предлагает эти значения пользователю как подсказки и подтверждает выбор до запуска:

<shortcut android:shortcutId="yoga_workout" android:shortcutShortLabel="@string/yoga">
  <capability-binding android:key="actions.intent.START_EXERCISE">
    <parameter-binding
      android:key="exercise.name"
      android:value="@array/yoga_synonyms" />
  </capability-binding>
</shortcut>

yoga_synonyms — string-array с вариантами: «йога», «yoga», «растяжка». NLU матчит их на yoga_workout shortcut.

Actions Console и публикация

App Actions требуют регистрации в Google Actions Console (console.actions.google.com) — отдельный инструмент от Google Play Console. Там же происходит проверка capabilities-конфигурации, тестирование с симулятором и публикация.

Для тестирования без публикации в Production: gactions CLI + плагин Google Assistant в Android Studio 4.1+. Команда gactions deploy preview заливает конфигурацию в черновик, после чего Assistant на тестовом устройстве (с тем же аккаунтом) обрабатывает команды.

Частая проблема: Actions Console требует, чтобы приложение было опубликовано в Google Play (хотя бы Internal track). Разработка без опубликованного приложения — только через тестовый режим с ограничениями.

Обработка в приложении

Activity, объявленная как targetClass, обязана корректно обрабатывать Intent во всех launch-режимах: холодный старт, возврат из фона, переход от другого экрана. Параметры, которые NLU не смог извлечь, придут как null — приложение должно показать экран выбора вместо краша.

Аналитика: каждый App Actions-запуск нужно логировать с параметрами для понимания, какие BII реально используются. Firebase Analytics или Amplitude, кастомное событие assistant_app_action с параметром bii_name.

Разработка App Actions с 2-4 BII, inline inventory, тестированием через Actions Console и публикацией: 3-5 дней. Стоимость рассчитывается индивидуально.