Интеграция Google Assistant для голосового управления Android-приложением

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

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

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

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

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Интеграция Google Assistant для голосового управления Android-приложением
Средний
~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

Интеграция Google Assistant для голосового управления Android-приложением

Пользователь говорит «Окей Гугл, открой мой заказ в [Название приложения]» — и приложение открывается на нужном экране. Или «добавь молоко в список покупок в [Приложение]» — и приложение выполняет действие без UI-взаимодействия. Это два разных механизма интеграции с Google Assistant, и оба требуют отдельной реализации.

Два способа интеграции

Built-in intents (BII) — Google предоставляет предопределённые типы действий: actions.intent.ORDER_MENU_ITEM, actions.intent.CREATE_TAXI_RESERVATION, actions.intent.GET_NEWS_ARTICLE и ещё 60+ вариантов. Приложение регистрирует поддержку конкретных BII через shortcuts.xml, Assistant понимает естественный язык и маппит его на нужный intent.

Conversational Actions (Dialogflow) — полноценный диалоговый агент для сложных многошаговых сценариев. Приложение не открывается — Assistant ведёт диалог от имени приложения. Это отдельная экосистема с Dialogflow CX/ES, webhook-интеграцией и собственным deployment-процессом. Для большинства мобильных приложений этот путь избыточен.

Мы фокусируемся на App Actions с BII — это основная интеграция для нативных Android-приложений.

Как работают App Actions

В res/xml/shortcuts.xml объявляются capabilities — какие BII поддерживает приложение и какой Intent или deeplink запускать:

<capability android:name="actions.intent.CREATE_TAXI_RESERVATION">
    <intent
        android:targetPackage="com.example.app"
        android:targetClass="com.example.app.BookingActivity">
        <parameter
            android:name="taxiReservation.pickupLocation.name"
            android:key="pickup_location" />
    </intent>
</capability>

Файл регистрируется в манифесте через <meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />.

Assistant извлекает параметры из голосовой команды через NLU — например, место отправления из фразы «закажи такси от Крещатика» — и передаёт их в Intent как extras. Приложение получает Intent в Activity и действует по параметрам.

Что усложняет реализацию

Выбор правильного BII. Google предоставляет список встроенных интентов, разбитых по категориям: fitness, food ordering, transportation, messaging, media. Если функционал приложения не совпадает с готовыми BII — остаётся только Custom Intents (App Actions, ограниченный набор через Actions Console, требует одобрения Google).

Parameter mapping. BII передают параметры в структурированном формате (schema.org-типы). taxiReservation.pickupLocation.name — строковое значение. Но что если пользователь сказал неточно и NLU вернул неверный адрес? Приложение должно это обрабатывать — показывать экран подтверждения или просить уточнить.

Тестирование. Google предоставляет gactions CLI и плагин Google Assistant для Android Studio. gactions test --action-package ... --invocation-name "..." — симуляция команды. На реальном устройстве Assistant должен быть настроен на тот же аккаунт Google Play Console. Без этого тестирование на физических устройствах невозможно до публикации в Production.

Версии Android. App Actions работают на Android 5.0+, но полноценно — с Google app 6.13+. Не все пользователи имеют актуальную версию. Fallback-поведение при отсутствии поддержки нужно проектировать.

In-app shortcuts. Assistant также показывает shortcuts из shortcuts.xml в виджете и в поиске. Статические shortcuts (объявлены в XML) и динамические (через ShortcutManager.pushDynamicShortcut()) — разные механизмы, могут дополнять App Actions.

Интеграция Google Assistant через App Actions с 2-3 BII, тестированием и публикацией в Actions Console: 3-5 дней. Стоимость рассчитывается индивидуально после анализа функционала приложения.