Pull to refresh

Android и bluetooth-клавиатура

image

Начать — труднее всего, так что я обойдусь без вступления. Всё по существу.


Какие преимущества и недостатки у использования bluetooth-клавиатуры?
+ С помощью bluetooth-клавиатуры набор идет быстрее. (Безусловно, со свайпом скорость выше, но (по крайней мере, для меня) только если не учитывать опечатки).
+ Набирая «на ощупь», можно отвлечь хоть часть внимания от клавиатуры.
+ Быстрый доступ ко всем спецсимволам. К примеру, при программировании на телефоне — это большой плюс.
+ В отличие от встроенной, bluetooth-клавиатуру можно и не таскать с собой, если ничего большого набирать не придется.
— Лишнее устройство.
— Небольшой, но всё-таки разряд аккумулятора.
— На ходу не особенно-то понабираешь, например, в ICQ — держать одновременно и телефон и клавиатуру, при этом еще и что-то печатая… Можно, но не совсем удобно, да и выглядит странно.

Так что, если печатать нужно лишь изредка: немного в поиск гугла, немного в SMS, еще чуть-чуть в какой-нибудь интернет-мессенджер — bluetooth-клавиатура не нужна. Но вот если печатать нужно много, подобное устройство может сильно облегчить жизнь.

image

Где купить bluetooth-клавиатуру?
ebay.com. Недостаток — слишком долгая доставка. Я ждал клавиатуру 25 дней и к тому времени, когда она пришла, уже забыл, зачем покупал.
— В одном из многочисленных интернет-магазинов. Тут свой минус — слишком завышенная цена. На ebay клавиатура стоила 18 долларов, здесь такая же стоит в среднем тысячу рублей.

Как подключить эту клавиатуру к Android-телефону?
Вот ради этого я, пожалуй, и решил написать эту статью. Поделиться несколькими советами.

В маркете есть большое число приложений для использования bluetooth-клавиатуры. Большинство — бесплатны.

Вначале я поставил Blueinput с 4pda. Но, к сожалению, у меня эта программа работала очень посредственно — часто теряла соединение, не могла автоматически подцепить клавиатуру. Часто отказывалась соединяться. К тому же было непонятно, как добавить русский язык.

Полез на маркет и наткнулся вот на эту программу. Меня подкупило слово root, «Раз используются рут-права, может, она-то хоть будет нормально эмулировать нажатия?» — подумалось мне. К счастью, я не ошибся — работает действительно великолепно. Суть программы сводится к следующему: программа загружает пару драйверов (на это и нужны рут-права), после которых можно связать телефон и клавиатуру, а сама каждые пять секунд проверяет, нет ли клавиатуры рядом. Если есть — соединяется.

Настройка клавиатуры
Все эти клавиатуры — такие разные. У всех есть какие-то свои хитрые кнопки, вроде кнопок управления плеером. А Android их может и не увидеть. И, чтобы исправить это, придется повозиться.

— Нужно составить список кодов клавиш, которые работают неправильно. Для этого можно воспользоваться этой программой. (Записывайте scancode).
— Вытащите из вашего телефона файл qwerty.kl. Он лежит в папке /system/usr/keylayout/. Откройте его любым текстовым редактором.
— Строки этого файла имеют структуру «key <код клавиши> <действие> <особенные свойства клавиши>». Измените его в соответствии с вашей клавиатурой.

> Список действий:
> — 0-9
> — A-Z
> — Спецсимволы: LEFT_BRACKET, RIGHT_BRACKET, BACKSLASH, SEMICOLON, APOSTROPHE, > COMMA, PERIOD, SLASH, MINUS, EQUALS, AT, SPACE, ENVELOPE
> — Важные кнопки: ALT_LEFT, ALT_RIGHT, SHIFT_LEFT, SHIFT_RIGHT, DEL, ENTER
> — SYM — (у меня) окно выбора средства ввода
> — MEDIA_STOP, MEDIA_PREVIOUS, MEDIA_PLAY_PAUSE, MEDIA_NEXT — управление плеером.
> — VOLUME_DOWN, VOLUME_UP — громкость
> — HOME, SEARCH, MENU, CALL, ENDCALL, BACK — обычные клавиши
> — SOFT_LEFT, SOFT_RIGHT, MUTE, GRAVE — неизвестные клавиши, неясно, что они делают
> — CAMERA, FOCUS — по идее, запуск камеры и фокусировка
> — DPAD_CENTER, DPAD_DOWN, DPAD_UP, DPAD_LEFT, DPAD_RIGHT — трекбол (с этими кнопками связан один баг — они меняют свои функции против часовой стрелки при повороте устройства)
> Не хватает такого важного действия, как, судя по разным источникам, CAPS или CAPS_LOCK. У меня не работает ни то, ни другое. Кстати, если действие будет не распознано, все строки ниже не будут обработаны.
> Особенные свойства:
> — WAKE — устройство проснется и отреагирует на нажатие.
> — WAKE_DROPPED — устройство только проснется.
— Закиньте измененный файл обратно. Установите права доступа — 644.
— Перезагрузитесь.

Так же можете посмотреть содержимое файла qwerty_ru.kcm.bin. Это — буквы на каждое из действий, по четыре штуки. По идее, можно русифицировать клавиатуру прямо отсюда, но это — далеко не лучшее решение. Но, если хотите, попробуйте. Правда, они скомпилированы — поищите в сети исходный файл.

image

Русификация клавиатуры
Ну, тут всё совсем просто. Стоит установить что-нибудь вроде ruKeyboard, и тот предоставит вам большой выбор раскладок (если их недостаточно — ничего не мешает вам добавить свою) и возможность быстрого преключения при нажатии Shift+Space.

А чтобы было совсем круто — за 150 рублей можно купить наклейки с русскими буквами для небольшой клавиатуры.

Приложения
Если вы станете владельцем той же клавиатуры, что и я, с сорока девятью клавишами — вот мои файлы:
qwerty.kl
arrays.xml — небольшой мод для ruKeyboard: добавляет раскладку, более подходящую для этой клавиатуры.

Используемые материалы
www.kandroid.org/android_pdk/keymaps_keyboard_input.html
chris.boyle.name/2010/08/android-keymaps
www.slatedroid.com/index.php?/topic/10538-keyboard-layout-qwertykl-thread
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.