Voice over для андроид

Как управлять смартфоном на Android только при помощи голоса

Говорят, что Apple больше других заботится о своих пользователях и делает для них по-настоящему удобные устройства. Разработчики компании продумывают всё настолько педантично, что пользоваться айфоном сможет даже незрячий. Сказывается удобный интерфейс под названием VoiceOver. С его помощью управляться со смартфоном можно при помощи голоса. Но немногие знают, что на Android есть точно такая же система, которая, впрочем, может пригодиться не только людям с нарушениями зрения, но и всем остальным, упростив управление.

Смартфоном можно с удобством управлять голосом, даже не прикасаясь к нему

Представлена Origin OS. Как бы выглядела iOS 14, если бы была оболочкой для Android

В отличие от iOS, где VoiceOver встроен прямо в систему, на Android всё устроено несколько иначе. Для голосового управления смартфоном была разработана специальная программа под названием Voice Access. Она основана на базе Google Ассистента, поэтому проблем с распознаванием быть не должно. Разве что работает она почему-то только с английским языком, а русский не распознаёт ни в каком виде. Правда, исключения тоже бывают, но о них – расскажу далее, потому что хочется обговорить это отдельно, а не подавать скомкано.

Голосовое управление Android

  • Скачайте приложение Voice Access себе на смартфон из Google Play;
  • Запустите и разрешите доступ к меню универсальных возможностей;

Voice Access требуется довольно много привилегий

  • Пройдите небольшую тренировку по управлению голосом и выйдите на рабочий стол;
  • Скажите Hey, Google и произнесите команду из тех, которой научились при первоначальной настройке.

Разработчики Google специально спроектировали Voice Access как инструмент полностью голосового управления. Поэтому вы сможете выполнять голосом практически любые манипуляции. Это может быть запуск приложений, пролистывание вниз и вверх, возврат на рабочий стол, управление настройками, набор и отправка сообщений, совершение голосовых звонков, запускать меню с фоновыми приложениями. В общем, вариантов действительно много. Единственное, как вы помните, управление голосом выстраивается только на английском.

Как открывать приложения голосом

Управлять смартфоном при помощи голоса можно только на английском

Исключение, о котором я говорил выше, заключается в том, что запускать приложения и вообще совершать с ними практически любые манипуляции можно на русском или по крайней мере на полу-русском языке. Что я имею в виду: из-за того, что часть приложений называется на английском (WhatsApp, Viber, Telegram), открыть их можно командой «Открой WhatsApp» и т.д. То есть Voice Access выцепляет именно название приложения, игнорируя слово «Открой», которое он не понимает.

Но зато русскоязычные названия приложений алгоритмы понимают без труда. Например, «Настройки» он наотрез отказывается распознавать как Settings, реагируя только в том случае, если вы произнесёте название нужного приложения по-русски. Если у вас и это не получается, обратите внимание на цифры на экране. Они сопровождают все интерактивные элементы интерфейса: приложения, кнопки, скроллер, пункты меню, настроек и т.д. При необходимости выполнить какую-то команду скажите по-английски просто «Tap *номер*». Это действие сымитирует прикосновение к функциональному элементу под нужным вам номером. Вполне удобно.

Читайте также:  Драйвер nokia для android

Как ответить на звонок без рук

Управлять голосом можно даже входящими звонками

Но особенно крутой мне показалась функция управления вызовами при помощи голоса. Она состоит в том, что каждый раз, когда вам будет поступать входящий звонок, Voice Access активируется автоматически. Это удобно тем, что вы сможете управлять звонком так, как вам нужно, не прикасаясь к смартфону. Чтобы активировать эту функцию, нужно открыть шторку уведомлений, а оттуда перейти в настройки Voice Access. Здесь в списке доступных параметров найдите пункт Activate for incoming calls. Дождитесь звонка и проверьте.

Вообще Voice Access – это очень удобная и универсальная штука, особенно, если к ней приноровиться. Например, я, чтобы алгоритмы лучше распознавали мою речь, отключил в Google Ассистенте работу на русском языке, оставив только английский. В результате кое-что стало получаться очень неплохо. Но готовьтесь к тому, что если ваше произношение оставляет желать лучшего, некоторые команды так и не будут восприняты смартфоном. От этого никуда не деться, но удобство от использования, по-моему, всё равно превосходит недостатки.

Источник

VoiceOver на iOS: каждый контрол ведёт себя по-разному

Привет, Хабр! Недавно я говорил про адаптацию приложений для незрячих и неподвижных людей. И не договорил!

Сегодня расскажу, как изменить поведение контролов с помощью accessibilityTraits и сделать жизнь незрячих чуть удобней. Знать работу этих трейтов (traits) важно, чтобы не писать свои костыли.

Адаптация iOS-приложения — большая тема, в одну статью всё не влезло, поэтому выпускаю их серией.

  1. Voice Control и VoiceOver: как адаптировать приложение для незрячих или неподвижных.
  2. VoiceOver на iOS: каждый контрол ведёт себя по-разному.
  3. VoiceOver на iOS: решение типовых проблем.
  4. Разница между реализацией VoiceOver, Voice Control и UI тестов. (In progress)

В первой части мы начали разбираться с адаптацией приложений для незрячих с помощью VoiceOver: подписали контролы, сгруппировали их, исправили навигацию. В этой статье пойдём дальше и рассмотрим «особенности», которые можно дать контролам, чтобы улучшить их работу для незрячих людей и в целом повысить удобство использования приложения.

Особенности элементов управления — Trait collection

VoiceOver имеет стандартный набор «особенностей» UITraitCollection , которые вы можете применять к контролам. Важно знать о них заранее, чтобы не придумывать своих решений. Я поделил их на три типа:

Тип контрола

VoiceOver знает про несколько базовых типов элементов. Часть из них уже настроена в вашем проекте, но всё равно расскажу про них.

Типы контролов используются для навигации: по ним можно быстро перемещаться с помощью ротора.

  • .staticText — для надписей, которые не меняются. Текст просто прочитается.
  • .header — заголовок: Добавить в пиццу, заголовок.
  • .button — кнопка. Основной способ подписывать активные контролы: Изменить состав, кнопка.
  • .image — картинка.
  • .link — ссылка. Редкий гость в приложениях, частый на сайтах.
  • .searchField — поиск.
Читайте также:  Zuma deluxe android 4pda

Смотрим на примере:

  1. Указываем заголовок. .staticText ставится автоматически для всех надписей, а вот .header для заголовка нужно поставить вручную. При этом нужен и .header и .staticText .
  2. Отмечаем место под картинку. В прошлый раз все маленькие картинки мы скрыли от VoiceOver, информативность не потеряли. В этот раз картинка большая, ее так просто не скрыть: место станет пустым, это странно. Помечаем картинку как .image и подписываем .accessibilityLabel = «Пицца Пепперони Фреш с перцем» .

Конечно, кнопки закрытия и корзины надо подписать, об этом было в прошлой статье.

Состояние контрола

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

  • .selected — добавляет «выбрано» перед названием контрола. Подходит для всех свитчеров и чекбоксов.
  • .notEnabled — добавляет «недоступно». Эта настройка не видна в Interface Builder и управляется только программно.

Пример с добавлением топпингов в пиццу:

С помощью состояний можно объяснить пользователю, что топпинг добавлен. Удобно поправить прямо внутри ячейки. accessibilityTraits это OptionSet , поэтому к нему можно применять методы вставки .formUnion и удаления .formIntersection :

Особые свойства контролов

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

  • .summaryElement — первое, что скажет приложение после запуска. Например, приложение погоды после запуска может сразу рассказать о температуре, а музыкальный плеер расскажет о включенной песне и исполнителе. В нашем случае можно говорить статус доставки, если заказа уже оформлен.
  • .updatesFrequently — штука для таймеров. Новое значение будет проговариваться раз в несколько секунд.
  • .causesPageTurn — скролит после прочтения. Вызовется accessibilityScroll(.next) у того контрола, который сможет это обработать. Смотрит по .firstResponder .
  • .startsMediaSession — обычно VoiceOver повторяет название нажатой кнопки, чтобы подтвердить действие. Это мешает, если контрол проигрывает звук. Включите этот трейт, чтобы VoiceOver не повторял название контрола.
  • .playsSound — стоит включить, если вы проигрываете собственный звук при фокусировании на контроле (если я всё правильно понял, сам ни разу не использовал).
  • .allowsDirectInteraction — для рисования и обработки жестов. Контрол сразу обрабатывает касание, будто VoiceOver выключен.
  • .keyboardKey — контрол начинает реагировать, как кнопка на клавиатуре. У VoiceOver есть несколько режимов ввода текста для таких случаев:

— standart typing — как простая кнопка в VoiceOver: сначала наведите фокус на букву, а затем нажмите дважды в любом месте, чтобы написать её. Набирать можно быстрее двумя руками: одним пальцем водить по клавиатуре (буквы будут озвучиваться) и касаться другим пальцем, чтобы подтвердить выбор клавиши.
— touch typing — однорукий ускоренный набор: водите пальцем по клавиатуре, чтобы озвучить кнопки. Отпустите палец, чтобы написать букву.
— direct touch typing — как обычный набор, будто VoiceOver выключен.

Видео про разные способы ввода:

Достаточно поставить галочку в IB, чтобы добавить поведение. С трейтом .adjustable так просто не получится, о нём отдельно.

Настраиваем могучий трейт .adjustable

И последний, особенно важный трейт .adjustable — элемент, который можно регулировать: так работают UIStepper и UISlider . Свайпните такой контрол вверх или вниз, чтобы изменить значение (не забывайте, что свайп влево/вправо переключит фокус на соседний элемент). Если у контрола есть UIPanGestureRecognizer, то можно тапнуть дважды и задержать второй тап, так жест сработает и можно управлять им напрямую, будто VoiceOver выключен.

Примеры применений для .adjustable :

Переключатель теста. Настройка теста состоит из пяти кнопок: три для выбора размера пиццы и две для типа теста. Их стоит сгруппировать и подписать, чтобы вместо пяти осталось две: «Размер, средний. Элемент регулировки» и «Тесто, традиционное. Элемент регулировки».

Нужно сделать в 4 шага:

  1. Сделать контейнер с кнопками доступным.
  2. Поставить трейт .adjustable .
  3. Реализовать методы увеличения и уменьшения.
  4. Возвращать новое значение для .accessibilityValue .

Теперь после свайпа вверх вызовется accessibilityIncrement() , вы увеличите внутренний счётчик, и VoiceOver прочитает новое значение из accessibilityValue.

Счетчик количества всего на свете. В данном блоке мы видим четыре контрола: кнопка минус, количество, кнопка плюс и цена. Можно объединить их в одну view и превратить в один контрол: «Количество, 1, 575 рублей. Элемент регулировки». После вертикального свайпа изменится количество, а затем произнесётся новое значение вместе с ценой.

Горизонтальные UICollectionView . Оказалось, что .adjustable удобно применять и для горизонтальных UICollectionView . Например, выбрать акцию в меню или машину в такси.

Заключение

В этот раз мы разобрали трейты: их типы, состояния и поведение. Это стандартный набор для типовых задач. Для сложных контролов можно использовать .adjustable.

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

А ещё у нас сейчас открыта одна вакансия в мобильном направлении. Так что я просто оставлю это здесь: Senior iOS Developer (Нижний Новгород).

Источник

VoiceOver — Record and Do More

Любите петь и хотите качественно записать свой голос с помощью телефона? Вам поможет специальное звукозаписывающее приложение VoiceOver — Record and Do More, которое используя встроенный микрофон устройства запишет ваш голос и поможет привести его в порядок, добавив высоту тона, эхо, реверберацию, усилит его, а также поможет настроить частотные характеристики голоса используя готовые пресеты эквалайзера или ручную настройку.

Приложение VoiceOver поможет наложить ваш голос на готовую музыку. Если вы очень любите петь и хотели записать свою голос и положить его на музыку, то это приложение поможет вам. Конечно оно не будет таким точным как в профессиональных программах, но для начинающих певцов сгодиться. Вы должны выбрать фоновую музыку из памяти своего устройства и откорректировать синхронизацию, чтобы голос не спешил или отставал.
VoiceOver — это еще прикольное звукозаписывающее приложение для развлечений, ведь в нем можно сделать ваш голос прикольным, таким как робота, бурундучка, монстра, Бэтмена или марсианина.

Рейтинг

Нажмите на звезду, чтобы поставить оценку

Средний рейтинг / 5. Количество оценок:

Пока нет оценок! Будьте первым, кто оценит этот пост.

Источник

Читайте также:  Андроид подключение usb модем через usb
Оцените статью