Виртуальная клавиатура - Virtual keyboard


Печатать на iPad виртуальная клавиатура

А виртуальная клавиатура это программный компонент, который позволяет ввод символов без физических ключей.[1] Взаимодействие с виртуальным клавиатура происходит в основном через сенсорный интерфейс, но также может иметь место в другой форме в виртуальный или же дополненная реальность.

Типы

На настольном компьютере виртуальная клавиатура может предоставить альтернативный механизм ввода для пользователей с инвалидность кто не может использовать обычную клавиатуру, или для двух- или многоязычный пользователи, которые часто переключаются между разными наборами символов или алфавитами, что со временем может сбивать с толку. Хотя аппаратные клавиатуры доступны с двумя раскладки клавиатуры (например. Кириллица / Латинскими буквами в различных национальных раскладках) экранная клавиатура представляет собой удобную замену при работе на разных станциях или на ноутбуках, которые редко бывают двойными.

Виртуальные клавиатуры можно разделить на следующие категории:

В Интернете разные JavaScript были созданы виртуальные клавиатуры, позволяющие пользователям вводить свои языки на иностранных клавиатурах, особенно в интернет-кафе. Мультитач экраны позволяют создавать виртуальные аккордовая клавиатура за планшетные компьютеры,[7] сенсорные экраны, сенсорные панели и проволочные перчатки.[8][9]

Мобильные устройства

Виртуальные клавиатуры обычно используются в качестве метода ввода на экране в устройствах без физической клавиатуры, где нет места для нее, например карманный компьютер, персональный цифровой помощник (КПК), планшет или же сенсорный экран -оборудован мобильный телефон. Текст обычно вводится либо касанием виртуальной клавиатуры, либо отслеживанием пальца.[10] Виртуальные клавиатуры также используются как функции программное обеспечение для эмуляции для систем, у которых меньше кнопок, чем на клавиатуре компьютера.

Историческое развитие

КПК

Виртуальная клавиатура на Карманные ПК КПК

Четыре основных подхода к вводу текста в КПК были: виртуальные клавиатуры, управляемые стилусом, внешние USB-клавиатуры, рукописные клавиатуры и распознавание штрихов. Многие ранние КПК не были ориентированы в первую очередь на виртуальные клавиатуры. Подход Microsoft к мобильной операционной системе заключался в имитации полноценной функциональной клавиатуры, что приводило к немного перегруженной раскладке клавиатуры.[11] Основная проблема, с которой столкнулись первые КПК, заключалась в поддержке технологии multi-touch и, как следствие, проблемах удобства использования для пользователя.

Первый iPhone

Когда яблоко представил первый iPhone в 2007 году решение не включать физическую клавиатуру было воспринято как ущерб устройству.[12] Но Apple принесла мультитач технологии в их новое устройство, что позволило им преодолеть проблемы удобства использования КПК. Шаблон дизайна виртуальной клавиатуры Apple сегодня стал стандартом для мобильных устройств.

Реализация и использование

Обе самые распространенные мобильные операционные системы, Android и iOS, дайте сообществу разработчиков возможность индивидуально разрабатывать собственные виртуальные клавиатуры.

Android
Настройки клавиатуры Android

В Android SDK предоставляет так называемую службу InputMethodService.[13] Эта служба предоставляет стандартную реализацию метода ввода, из которого могут быть получены и настроены окончательные реализации, что позволяет сообществу разработчиков Android реализовать свои собственные раскладки клавиатуры. InputMethodService поставляется вместе с ним в представлении клавиатуры.[14] Хотя службу InputMethod можно использовать для настройки ввода клавиш и жестов, класс клавиатуры загружает XML описание клавиатуры и хранит атрибуты клавиш.[15]

В результате можно установить разные версии клавиатуры на Android устройство, и что клавиатура - это всего лишь приложение; возможна простая активация через меню настроек Android.[16]

iOS
Apple iOS UIInputViewController

яблоко также предоставляет сообществу возможность разрабатывать собственные клавиатуры, но не дает доступа к толковый словарь или общие настройки клавиатуры. Дальше iOS автоматически переключается между системной и настраиваемой клавиатурами, если пользователь вводит текст в поле ввода текста.[17][18]

UIInputViewController - это основной контроллер представления для пользовательского расширения приложения клавиатуры. Этот контроллер предоставляет различные методы для реализации настраиваемой клавиатуры, такие как пользовательский интерфейс для настраиваемой клавиатуры, получение дополнительной лексики или изменение основного языка настраиваемой клавиатуры.[19]

Производительность ввода текста

Рядом с классической реализацией виртуальной клавиатуры Android, iOS и настраиваемые клавиатуры, такие как SwiftKey например, предоставляют различные функции для повышения удобства использования и повышения эффективности своих клавиатур.

Автокоррекция и проверка орфографии

Платформа Android предлагает структуру проверки орфографии, которая предлагает возможность реализовать и получить доступ к проверке орфографии в самом приложении. Фреймворк является одним из текстовых сервисов API предлагается платформой Android. На основе предоставленного текста объект сеанса возвращает варианты правописания, созданные средством проверки орфографии.[20][21]

iOS использует класс UITextChecker, объект, используемый для проверки строки (обычно текста документа) на наличие орфографических ошибок, обычно известный как автокоррекция Apple. Проверка орфографии UITextChecker использует словарный запас для данного языка. Ему можно указать игнорировать определенные слова при проверке орфографии в определенном документе, и он может выучить новые слова, что добавит эти слова в лексикон.[22]

Подсказки слов

Различные научные статьи в начале 2000-х годов показали, еще до изобретения смартфонов, что предсказание слов на основе того, что набирает пользователь, очень полезно для увеличения скорости набора.[23][24] В начале разработки этой функции клавиатуры предсказание в основном основывалось на статических словарях. Google реализовал метод прогнозирования в 2013 году в Android 4.4. Эта разработка в основном была вызвана сторонними поставщиками клавиатур, такими как SwiftKey и Swype.[25] Оба предоставляют мощную систему поиска слов с соответствующими базами данных.[26] В 2014 году Apple представила iOS 8 [27] который включает новую функцию интеллектуального набора текста под названием QuickType, которая отображает подсказки слов над клавиатурой по мере того, как пользователь вводит текст.

Набор жестов

iOS и Android позволяют разработчикам заменять клавиатуру собственными приложениями для клавиатуры. Это привело к экспериментам и появлению новых функций, таких как функция ввода с помощью жестов, которая появилась на официальной клавиатуре Android после того, как зарекомендовала себя на сторонних клавиатурах. Исследования Google сам подтвердил, что набор жестов увеличивает скорость набора текста на 22% и снижает частоту ошибок почти до 0%.[28] Google также показал, что метод набора с помощью жестов также полезен для умных часов. Их научные исследования в первую очередь основаны на исследованиях И. Скотта Маккензи и статьях о моделировании прикосновения пальцев с помощью закона Фиттса.

Тактильная обратная связь

Тактильная обратная связь обеспечивает тактильное подтверждение того, что клавиша была успешно нажата, то есть пользователь слышит и чувствует «щелчок» при нажатии клавиши. Использование гистерезис, ощущение физической клавиши можно имитировать в еще большей степени. В этом случае есть начальный "щелчок", который слышен и ощущается при нажатии виртуальной клавиши, но затем, когда давление пальца уменьшается после нажатия клавиши, возникает следующий звук "отсоединения" и ощущение, как будто физическая клавиша возвращается в исходное состояние без щелчка. Такое поведение объясняется в статье 2004 года Алекса Онищака и Скотта Маккензи «Сравнение двух методов ввода для клавиатур на мобильных устройствах», в которой впервые была представлена ​​тактильная обратная связь с гистерезисом на виртуальной клавиатуре.[29]

Специальные типы клавиатуры

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

Оптическая виртуальная клавиатура

An оптический виртуальная клавиатура была изобретена и запатентована IBM инженеры в 1992 году.[30] Он оптически обнаруживает и анализирует движения рук и пальцев человека и интерпретирует их как операции на физически несуществующем устройстве ввода, таком как поверхность с нарисованными клавишами. Таким образом, он позволяет имитировать неограниченное количество типов устройств ввода с ручным управлением, таких как мышь или клавиатура. Все механические устройства ввода могут быть заменены такими виртуальными устройствами, оптимизированными для текущего приложения и физиологии пользователя, сохраняя скорость, простоту и однозначность ручного ввода данных.

Клавиатуры дополненной реальности

Основная идея виртуальной клавиатуры в дополненная реальность окружающая среда должна дать пользователю возможность ввода текста. Распространенный подход - визуализировать плоскую клавиатуру в дополненной реальности, например с использованием Единство TouchScreenKeyboard. В Microsoft HoloLens позволяет пользователю указывать на буквы на клавиатуре, двигая головой.[31]

Другой подход был исследован корейской лабораторией KJIST U-VR в 2003 году. Их предложение состояло в том, чтобы использовать носимые устройства для отслеживания движения пальцев, чтобы заменить физические клавиатуры виртуальными. Они также пытались дать пользователю аудиовизуальную обратную связь при нажатии клавиши. Основная идея заключалась в том, чтобы дать пользователю более естественный способ ввода текста, основанный на том, к чему он привык.[32]

Клавиатуры виртуальной реальности

Проблемы, как в дополненная реальность, заключается в том, чтобы дать пользователю возможность вводить текст в полностью виртуальной среде. Одна большая проблема заключается в том, что большинство систем дополненной реальности на рынке не отслеживание рук пользователя. Так много доступных систем дают возможность указывать на буквы.[33]

В сентябре 2016 г. Google выпустили приложение виртуальной клавиатуры для своих Мечта[34] гарнитура виртуальной реальности. Чтобы ввести текст, пользователь может указать на определенные буквы с помощью контроллера Daydream.[35]

В феврале 2017 г. Logitech представили экспериментальный подход к переносу своих клавиатур в виртуальную среду. С Vive Tracker и игровая клавиатура Logitech G позволяют точно отслеживать каждое движение пальца без использования перчаток. 50 таких пакетов были отправлены эксклюзивным разработчикам, что позволило им в сочетании с комплектом для разработчиков BRIDGE от Logitche протестировать и экспериментировать с новой технологией.[36][37]

Соображения безопасности

В некоторых случаях можно использовать виртуальную клавиатуру, чтобы снизить риск регистрация нажатий клавиш.[38] Например, Westpac Онлайн-банкинг использует виртуальную клавиатуру для ввода пароля, как и TreasuryDirect (см. картинку). Сложнее для вредоносное ПО для мониторинга дисплея и мыши для получения данных, вводимых с виртуальной клавиатуры, чем для отслеживания реальных нажатий клавиш. Однако это возможно, например, записав скриншоты через равные промежутки времени или при каждом щелчке мышью.[39][40]

Экран входа TreasuryDirect с виртуальной клавиатурой

Использование экранной клавиатуры, на которой пользователь «печатает» щелчком мыши, может увеличить риск раскрытия пароля за счет плечевой серфинг, потому что:

  • Наблюдатель обычно может легче (и менее подозрительно) смотреть на экран, чем на клавиатуру, и видеть, на какие символы перемещается мышь.
  • Некоторые реализации экранной клавиатуры могут давать визуальную обратную связь о нажатой «клавише», например кратковременно изменив его цвет. Это облегчает наблюдателю чтение данных с экрана. В худшем случае реализация может оставить фокус на последней нажатой «клавише» до тех пор, пока не будет нажата следующая виртуальная клавиша, что дает возможность наблюдателю прочитать каждый символ даже после того, как мышь начнет перемещаться к следующему символу.
  • Пользователь может не иметь возможности «указывать и щелкать» так быстро, как он мог бы печатать на клавиатуре, что облегчает работу наблюдателя.

Смотрите также

Примечания

  1. ^ "виртуальная клавиатура". PCMag.
  2. ^ Заявка США 4725694  Auer Carol M, Castagno Daniel L / AT&T: дата приоритета "Устройство компьютерного интерфейса" 13.05.1986
  3. ^ Заявка на патент Германии 19734511  B. Kämmerer, C, Maggioni, H. Röttger / SIEMENS AG: дата подачи заявки "Kommunikationseinrichtung" 08.08.1997
  4. ^ WO 0003348  К. Маггиони, Б. Каммерер / SIEMENS AG: дата приоритета "Проекционное устройство / Vorrichtung zur Projektion" 10.07.1998
  5. ^ EP 0554492  Ханс Э. Корт: "Способ и устройство для оптического ввода команд или данных" дата подачи 07.02.1992
  6. ^ "Виртуальная клавиатура".
  7. ^ Цзянь-Сюй Чен. «Дизайн и оценка аккордовой клавиатуры для управления планшетным компьютером». Национальный университет Ченг Кунг.
  8. ^ «Концепция ASETNIOP, призванная упростить слепой набор текста на сенсорном экране». Gizmag.com.
  9. ^ «Невидимая клавиатура ASETNIOP позволяет вам печатать вслепую на iPad». todaysiphone.com.
  10. ^ «Ввод текста с отслеживанием пальца Swype кажется быстрым, гипнотическим и волшебным». Engadget. Получено 2016-03-24.
  11. ^ Георгиев, Цветозар; Георгиева, Евгения (12.06.2008). Мобильное приложение для определения скорости ввода текста пользователями.
  12. ^ Титкомб, Джеймс (2017). «Как мир отреагировал на первый iPhone 10 лет назад». Телеграф. ISSN  0307-1235. Получено 2018-03-16.
  13. ^ "InputMethodService | Разработчики Android". developer.android.com. Получено 2018-03-19.
  14. ^ «Создать настраиваемую клавиатуру на Android». Код Envato Tuts +. Получено 2018-03-19.
  15. ^ «Клавиатура | Разработчики Android». developer.android.com. Получено 2018-03-19.
  16. ^ "клавиатура - Google Play". Получено 2018-03-19.
  17. ^ «Управление клавиатурой». developer.apple.com. Получено 2018-03-19.
  18. ^ «UIInputViewController - UIKit | Документация разработчика Apple». developer.apple.com. Получено 2018-03-19.
  19. ^ «Руководство по программированию расширений приложений: настраиваемая клавиатура». developer.apple.com. Получено 2018-03-19.
  20. ^ "UITextChecker - UIKit | Документация разработчика Apple". developer.apple.com. Получено 2018-03-19.
  21. ^ "Система проверки орфографии | Разработчики Android". developer.android.com. Получено 2018-03-19.
  22. ^ Лю, Хорватия (25 апреля 2016 г.). "UITextChecker". NSHipster. Получено 2018-03-19.
  23. ^ Том Стокки, Александр Фоборг, Генри Либерман (2004). «Здравый подход к интеллектуальному вводу текста». Цитировать журнал требует | журнал = (помощь)CS1 maint: несколько имен: список авторов (связь)
  24. ^ Данлоп, Марк Д. и Кроссан, Эндрю (2000). «Интеллектуальные методы ввода текста для мобильных телефонов». Цитировать журнал требует | журнал = (помощь)CS1 maint: несколько имен: список авторов (связь)
  25. ^ Хаттерсли, Люси. «Как использовать новые параметры клавиатуры QuickType и Swype в iOS 8». Macworld UK. Получено 2018-03-19.
  26. ^ «Apple - iOS 8 - QuickType». яблоко. Получено 2018-03-19.
  27. ^ «Использование клавиатуры QuickType iOS 8». CNET. 2014-09-19. Получено 2018-03-19.
  28. ^ Гордон, Митчелл; Оуян, Том; Чжай, Шумин (07.05.2016). WatchWriter: набор текста касанием и жестами на миниатюрной клавиатуре SmartWatch со статистическим декодированием.
  29. ^ Онищак, Алекс. «CHI: Сравнение двух методов ввода для клавиатур на мобильных устройствах» (PDF). developer.apple.com.
  30. ^ EP 0554492  Ханс Э. Корт: "Способ и устройство для оптического ввода команд или данных" дата подачи 07.02.1992
  31. ^ «Ввод с клавиатуры в Unity». developer.microsoft.com. Получено 2018-03-16.
  32. ^ Ли, Минкён; Ву, Woontack (01.01.2003). ARKB: клавиатура дополненной реальности на основе трехмерного зрения.
  33. ^ Поупырев Иван. «Виртуальный блокнот: рукописный ввод в виртуальной реальности с эффектом погружения» (PDF). Цитировать журнал требует | журнал = (помощь)
  34. ^ LLC, Google (21.02.2018), Клавиатура Daydream, Google LLC, получено 2018-03-16
  35. ^ "Google запускает виртуальную клавиатуру для телефонов с поддержкой Daydream". Тактильный. 2016-10-19. Получено 2018-03-16.
  36. ^ «Представляем Logitech BRIDGE SDK - блог VIVE». blog.vive.com. Получено 2018-03-16.
  37. ^ «Logitech экспериментирует с клавиатурой, созданной для виртуальной реальности - TechCrunch». techcrunch.com. Получено 2018-03-16.
  38. ^ "Виртуальная клавиатура".
  39. ^ Программное обеспечение Lake: Не побеждает кейлоггеров!
  40. ^ Смит, Дэвид А. (21.06.2006), Перехитрить клавиатурных шпионов, Журнал ПК, получено 2009-11-16

внешняя ссылка