Root NationСофтПриложения Swype: сделай сам - небольшой взгляд изнутри

[Android] Swype: сделай сам – небольшой взгляд изнутри

-

[Android] Swype: сделай сам - небольшой взгляд изнутри

Наверняка, многие пользователи Android пользуются именно клавиатурой Swype в своей повседневной жизни. И ни для кого не секрет то, что с недавних пор с данной клавиатурой произошли серьезные изменения. Причем не в лучшую сторону. Вот несколько основных проблем:

  • переключение языков теперь осуществляется удержанием клавиши пробела с последующим выбором, вместо удобного переключения отдельной кнопкой – это серьезно замедляет процесс набора текста и сводит на нет все преимущества клавиатуры;
  • невозможность исправления окончания слова, т.к. при нажатии на клавишу backspase удаляется сразу все слово – полный бред, приходится делать еще один тап, а то и несколько, для того чтобы исправить пару букв в слове.

Подробнее обо всех проблемах и недостатках новой версии приложения писал мой коллега Alex Shvarz в своей недавней статье [Зачем убивают Swype?].

Сама процедура установки новой версии Swype beta достаточно забавная – необходимо зарегистрироваться на официальном сайте, скачать программу installer, установить сначала ее, затем запустить, ввести email и пароль для подключения, и только после этого скачается и установится сама клавиатура. Т.е. нужно установить одну программу для установки другой. Масло масляное. Тем не менее, основным преимуществом новой версии Swype beta является тот момент, что она универсальна – подстраивается под любые разрешения, поэтому доступна для любого устройства – смартфона или планшета, в отличие от старых версий, которые рассчитаны под определенное разрешение.

Но вернемся к недостаткам Swype beta. Попользовавшись несколько дней новой версией Swype, непреодолимо хочется ее сменить. Ведь главное преимущество клавиатуры – быстрый ввод – здесь почти отсутствует. Вернее, ввод-то остался таким же быстрым, но время, которое вы тратите на переключение языков и корректировку введенного текста, нивелирует все преимущества. Именно поэтому многие пользуются старыми версиями Swype, где вышеописанных недостатков нет – языки переключаются одним кликом по специально выделенной для этого кнопке, при нажатии на клавишу backspase удаляется только последняя буква, а не все слово. Но и тут есть несколько моментов, которые препятствуют нормальной эксплуатации. Одним из факторов, усугубляющих ситуацию, является, как ни странно, многообразие версий старой клавиатуры. Да, ведь есть официальные варианты клавиатуры и версии от ОЕМ, которые лицензировали в свое время клавиатуру для применения на своих устройствах. В старых версиях клавиатуры есть ряд багов и недоработок, которые проявляются частично или в полном составе в зависимости от версии. Причем обычно, если работает одно, то не работает другое. Основные проблемы, которые могут встречаться все сразу или в различных комбинациях:

  • Прыгающая строка подсказок (она появляется, когда ставишь курсор, и исчезает после того, как заканчиваешь ввод), из-за которой прыгает поле ввода – особенно бесит в мессенджерах.
  • Глюк, возникающий при автоподстановке в некоторых твиттер-клиентах, например Plume – вы вводите первые несколько букв, потом выбираете имя пользователя или тег из предложенных (обычно на английском языке), и когда после этого переключаете язык ввода на русский, то клавиатура добавляет к имени пользователя еще те несколько символов, которые вы до этого успели набрать, чтобы сработала подсказка.
  • Отсутствие нормального голосового ввода на языках отличных от английского в версиях клавиатуры, когда Google Voice был заменен собственным движком Dragon.

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

[Android] Swype: сделай сам - небольшой взгляд изнутри  [Android] Swype: сделай сам - небольшой взгляд изнутри

Короче, некоторое время я промаялся на версии Swype, выдернутой мной из стоковой самсунговской прошивки для Galaxy Note, и тут присутствует и глюк автоподстановки и прыгающая строка – но это лучше, чем переключение языков длинным тапом (проверено, долго выдержать такое издевательство невозможно), зато работает русский голосовой ввод. Вот такие компромиссы. В один прекрасный момент я решил – хватит это терпеть! И взялся за данный вопрос серьезно. Я перерыл всю любимую помойку 4pda в поисках сборки для Note, но так и не смог найти ничего подходящего – то сборка с теми же багами, то без голосового ввода, то скин ядовитый, выжигающий глаза.  Тут стоит отметить, что 4pda, конечно, интересный и полезный ресурс, и там есть ВСЁ. Но найти что-либо крайне сложно. Поиск вообще дурацкий. Не в обиду, помойка она и есть помойка. Но там же я наткнулся на несколько инструкций, как можно адаптировать любую версию клавиатуры под нужное  разрешение. И это работает! Все достаточно просто. Я быстренько состряпал для себя нормальную сборку клавиатуры и спешу поделиться данным опытом с другими пользователями.

Решение проблемы – настраиваем Swype под себя

Итак, что необходимо сделать.

1. Скачиваем файл swype.apk на ПК.

В данном случае я использую версию для Galaxy Nexus, любезно предоставленную мне Саней Шварцем. Вот ссылка на исходный файл. Данная сборка не содержит всех описанных мной недостатков и имеет приятный серо-голубой скин. Однако, к сожалению, тут только английский и русский языки. Поэтому, если кто-то имеет подобный исходный файл с другими языками (например мне нужен украинский, кто-то в твиттере просит французский или итальянский), то я буду весьма рад вашей ссылке на такой файл в комментариях. Как вы понимаете, подойдет версия под любое разрешение, главное, чтобы там было много языков и отсутствовали описанные мной баги.

2. Открываем файл в любом архиваторе.

Да, на самом деле, apk это просто подписанный zip-архив. Лично я использую для этой цели программу 7-zip, которая позволяет работать с архивом, не распаковывая его, но вы можете использовать WinRAR или WinZip, или какой-либо другой архиватор для Windows, неважно.

[Android] Swype: сделай сам - небольшой взгляд изнутри

3. Переходим в папку:

В проводнике архиватора выбираем папку с адресом assets\files и находим там файл display0_SwypeScreen.ini

[Android] Swype: сделай сам - небольшой взгляд изнутри

Если у вас в этой папке имеются файлы ini с другими числами после слова display, например display1_SwypeScreen (обычно от 1 до 8) – просто удаляем их.

4. Открываем файл в текстовом редакторе.

Вы увидите следующее:

[Android] Swype: сделай сам - небольшой взгляд изнутри

5. Исправляем текущие значения.

Правим значения отображения клавиатуры в пикселях для альбомной и портретной ориентации экрана (в данном примере я подгоняю параметры под разрешение Galaxy Note), но вы, естественно, используйте свои значения:

[Android] Swype: сделай сам - небольшой взгляд изнутри

Отредактировать необходимо не только числовые значения (количество пикселей по ширине и высоте), но и код экрана. В моем случае это HD800, вы же должны точно узнать и использовать свой код, соответствующий разрешению вашего экрана – это буквенные значения дополненные цифрами (в некоторых случаях, если разрешение нестандартное), например, ниже я привожу самые популярные разрешения и их коды:

  • QVGA (240х320)
  • WQVGA (240×400)
  • HVGA (320х480)
  • WVGA (480×800)
  • WVGA854 (480х854)
  • qHD (540×960)
  • SVGA (600×800)
  • WSVGA (600×1024)
  • HD720 (720×1280)

После редактирования просто сохраняем файл со всеми изменениями.

5. Подписываем полученный apk-файл.

Измененный файл apk необходимо подписать, иначе мы не сможем его установить на наше устройство Android.

Для этого можно использовать утилиту Signare, которую я скачал с XDA-developers – ссылка на тему.

Работа с утилитой очень проста.

Распаковываем архив в любое место на вашем ПК и видим следующее:

[Android] Swype: сделай сам - небольшой взгляд изнутри

Кладем наш измененный файл в папку Input и запускаем утилиту.

[Android] Swype: сделай сам - небольшой взгляд изнутри

Далее, мы видим меню, где можем сделать выбор действия:

[Android] Swype: сделай сам - небольшой взгляд изнутри

Вводим 1 и нажимаем Enter. Процесс пошел…

[Android] Swype: сделай сам - небольшой взгляд изнутри

По его окончании вы получите готовый подписанный файл. Он будет находиться в папке Output – копируете apk на свое устройство, устанавливаете его обычным образом и наслаждаетесь клавиатурой Swype без багов.

Ниже публикую ссылки на полученные мной таким образом сборки для Galaxy Note:

C высотой 450 пикселей в портретном режиме – swype_SV_Note

[Android] Swype: сделай сам - небольшой взгляд изнутри

С высотой 400 пикселей в портретном режиме – swype_SV_Note_h400

[Android] Swype: сделай сам - небольшой взгляд изнутри

Вариант для планшетов с высотой, увеличенной до 450 пикселей – swype_SV_Note_tab_h450

[Android] Swype: сделай сам - небольшой взгляд изнутри  [Android] Swype: сделай сам - небольшой взгляд изнутри

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

Как удалить встроенный Swype с вашего устройства

В случае, если вы имеете предустановленную версию Swype на своем устройстве, вам не удастся установить другую версию из файла apk. Сначала необходимо удалить исходную клавиатуру из прошивки. Для этого, вам обязательно нужно иметь root-права на своем устройстве.

При помощи любого файлового менеджера с доступом к системным разделам (я использую Root Explorer), удаляем несколько файлов:

Основной файл apk находится по адресу: system/app/swype.apk

Кроме того, необходимо удалить несколько файлов из папки system/lib – это libSwypeCore.so и возможно libnmsp_speex.so (второго файла может и не быть – это зависит от конкретной версии Swype). После этого перезагрузите смартфон или планшет. Теперь вы можете спокойно устанавливать и в дальнейшем обновлять Swype с заменой исходной сборки и без потери настроек и словаря.

На этом все. Задавайте вопросы и делитесь ссылками на готовые сборки Swype для конкретных устройств и различных разрешений экранов в комментариях. До новых встреч!

Vladyslav Surkov
Vladyslav Surkov
Сооснователь Root Nation. Редактор, CEO. Мне плевать на шильдики и я не поклоняюсь брендам. Только качество и функциональность гаджета имеют значение!
Subscribe
Notify of
guest

21 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
Ivan
Ivan
11 years ago

Большое спасибо! Для моего ноута перерыл и перепробовал половину сборок с 4pda, плюнул, вбил в гугле и нашёл Вашу статью. ИМХО её надо на том самом 4pda добавить в шапку, если там ещё нет..

Vladislav Surkov
Vladislav Surkov
11 years ago
Reply to  Ivan

Статья старая, уже можно использовать официальный swype, который скачивается с сайта swype.com после регистрации. Подходит под любые разрешения. Там многое исправили, в т.ч. можно переключаться между последними 2-мя языками свайпом от служебной кнопки к пробелу. также есть синхронизация словарей между устройствами.

Сергей
Сергей
11 years ago

Очень благодарю за статью. До этого юзал данную клаву только на WM, омг, как же она была ужасна…

Дмитрий
Дмитрий
11 years ago

Мега-статья! На мои 480х735 нормальный свайп не встал. По этой статье всё получилось! Спасибо!

Vladislav Surkov
Vladislav Surkov
11 years ago
Reply to  Дмитрий

На здоровье :-)

Руслан Коновалов (@Konovalovrg)
Руслан Коновалов (@Konovalovrg)
12 years ago

Хочу хардовую клаву.. а из вменяемых вариантов – только Дройд4, с английскими буквами ((

EDWARD
EDWARD
12 years ago

Спасибо за подробную инструкцию! С ее помощью сваял себе на Ноут-2 привычную клаву.

maxnatiy
maxnatiy
12 years ago

а я, промудохавшись недельку, поставил SlideIT – и понял, что его-то мне и не хватало. Там все прекрасно и без издевательств над пользователем. Цена вопроса без распродажи – 4 бакса, если мне не изменят память. Периодически распродают за бакс. Темы для него оч красивые и много.

Vladislav Surkov
Vladislav Surkov
12 years ago
Reply to  maxnatiy

а покажите плиз скриншот этой клавиатуры. Спасибо!

Vitalik
Vitalik
12 years ago

Там плохой украинский словарь, проблем тоже хватает, клавиатура давно не обновлялась.

Vladislav Surkov
Vladislav Surkov
12 years ago
Reply to  Vitalik

спасибо за разъяснения. все-таки альтернативы swype пока не видно… жаль :(

Vitalik
Vitalik
12 years ago

Оказывается, клавиатура (SlideIt) существенно обновилась недавно, в конце сентября. Многое взяли у свайпа :) есть свои интересные “фичи” – рекомендую хотя бы поюзать демку.

Vitalik
Vitalik
12 years ago
Vladislav Surkov
Vladislav Surkov
12 years ago
Reply to  Vitalik

Спасибо! буду пробовать

LastDanmer
LastDanmer
12 years ago

Что за twitter клиент?

Vladislav Surkov
Vladislav Surkov
12 years ago
Reply to  LastDanmer

Plume

Alexei Koliada
Alexei Koliada
12 years ago

Супер, только я не понял до конца момент с исходным .apk. С украинской раскладкой и всеми вышеописанными плюшками есть? Я так понял, что в приложенном файле только русский и английский.

Vladislav Surkov
Vladislav Surkov
12 years ago
Reply to  Alexei Koliada

Что есть то есть. Сам бы хотел найти исходник без багов и с украинским. Но пока только русский и английский. Если найдешь другой, дай знать. Т.е. катит для любого аппарата, как ты понимаешь. Разрешение поправим.

Виктор Юрлов
Виктор Юрлов
12 years ago

Да заради такого я готов на Андроид метнуться! Где тут у вас Ноты вторые раздают?)))

Vladislav Surkov
Vladislav Surkov
12 years ago

от тролляка :))

Викрам Патель (@VicramPatel)
Викрам Патель (@VicramPatel)
12 years ago

Очень полезная статья! Спасибо!
Ушел экспериментировать :)