Many keyboards are available on Android, but not all of them are equal. Some try to be the best keyboard for all users, others target a niche market – whatever you’re looking for, you’re likely to find one that suits your needs.
To help you find the keyboard you want, we’re going to review a dozen (based on your comments here, plus some popular choices) by taking a look at several aspects:
Input:
Input modes (e.g. typing and swiping) and accuracy.
Input related gestures, if any.
Ease of use for numbers/symbols input.
Gestures, if any.
Text shortcuts and emoji.
Multiple languages:
Ease of switching between languages and dual language input.
Custom layouts for languages.
Correcting input and predictions:
Suggestions/auto-corrections.
Correcting input (undoing mistakes, controlling the cursor for precision, etc).
Custom dictionaries.
Next word predictions.
Themes/Customizability.
Other features.
Privacy. (Note: We’ll only link to the keyboard’s privacy policy for reference, and note if an Internet connection is necessary for some features. The choice is up to you.)
A short screencast will also be shown for each, to give you a quick idea of how easy it is to use (we’ll use an unknown word and punctuation by typing “Hello, xda-developers.com!”).
Here’s the list of keyboards we’ll check. You can use it to quickly jump to those you’re interested in, or check the summary table at the end and come back for additional details:
Contents
ai.type
Fleksy
Google Keyboard
Hacker’s Keyboard
Hodor Keyboard
Minuum
Multiling O Keyboard
MyScript Stylus
NextApp Keyboard
SwiftKey
Swype
Thumb Keyboard
TouchPal
Summary Table
ai.type
Input
ai.type supports both normal typing and optional gesture typing. Gesture typing seems stricter than other keyboards, and gives less leeway when it comes to making turns. Connecting the letters with straight lines makes it much better, though it still falls short some times and fails to input anything at all.
For numbers, you’ve got a few choices. You can long press the top row, go to the secondary pane. You can also enable a numpad for the secondary pane. Symbols are shown on the main pane and can be accessed by long pressing the main key, or going to the secondary pane (which can be easily accessed by swiping from the symbols key). Also, if you enable the top row, you’ll get three pages in it: one for numbers, one for clipboard controls/arrow keys, and one for symbols.
Emoji are supported via a plugin that must be installed separately. Recently used emoji are displayed in their own tab, and many other symbols can be accessed from their own tab as well (a few examples: ♜ ♘ ♞ ✔ ✓ ✘). You can also enable emoji predictions in the settings.
Text shortcuts can be defined and modified in the settings screen, and can be used to input common phrases quickly.
Multiple languages
After installing the languages you want, you can switch between them by swiping on the space bar. Some languages require a dictionary from the Google Play store. Dual language input and custom layouts are not possible. Some languages are available in multiple layouts (for example, you can enable French in the standard QWERTY layout or AZERTY), but this is not true for all languages and layouts.
Correcting input and predictions
Corrections are acceptable as long as you’re not too sloppy, as ai.type fails to suggest anything at all more often than other keyboards when you make too many mistakes (sometimes when only one letter is off). This is even more true for gesture typing. If you’re accurate enough, suggestions are pretty good.
To undo a correction, you can simply press the backspace key after it is made. The original word is not saved after that, so you can’t go back to a word and select it from the list of suggestions. Undo/redo and arrow keys are easily accessible from the main keyboard, which is helpful for corrections and precise cursor control.
The Android user dictionary and contacts names are automatically imported, although text shortcuts are not. Learning a word is done by pressing an icon in your top bar that looks like the three-star dragon ball, and forgetting words by long pressing them in the suggestions bar.
Next word predictions are optional and start simple, but do learn from your typing habits and get better. You can also enable cloud predictions for better results, though the difference doesn’t seem to be drastic.
Themes and customizability
ai.type is extremely customizable — you can modify every color, background and font used to create your own theme, or select from one of the many pre-made themes in the market. You can also share themes you’ve created with others. Many of the keyboard’s aspects are also customizable, such as the size, bottom row contents (you can put any character you want in it) and more.
Other features
You can dynamically resize the keyboard at any time by dragging the arrow key in the top bar. Several utilities are also available, allowing you to access text shortcuts, control the clipboard, make and input calculations, search for the selected text and use a third party grammar checker.
Input narration can be enabled in the settings, which dictates words you type and corrections as they are made.
You can switch the keyboard’s layout to one that is more friendly for typing with one hand. This is done by swiping the “↕” key to the left. The size and orientation of the thumb keyboard can also be changed dynamically.
Privacy
You can find ai.type’s privacy policy here. An Internet connection is required to download additional languages, themes, and for cloud related features. Encryption can be turned on for cloud predictions.
Download
ai.type keyboard Free (Free; 14 days trial for premium features).
ai.type keyboard Plus ($3.99).
Fleksy
Input
Fleksy looks like your average keyboard, but it’s got some neat features to set it apart. It comes with some intuitive gestures you can use to quickly perform common actions. You can swipe to the right to insert a space, or to the left to delete the last word. Other gestures are also present, which we’ll discuss later.
Inputting numbers and symbols is usually done by switching to the secondary pane (they’re not shown at all in the primary pane). This can be done in multiple ways: you can press the “123” button, swipe from it, or long press any key. However, you can also activate “extensions” for additional functionality, such as adding a numbers row. Common punctuation marks are also offered as suggestions after every word, and you can cycle through them by swiping up and down.
Another extension allows you to define text shortcuts, which can come in handy for typing common phrases, emails or phone numbers quickly. Emoji and text emoticons input is also present, and can even be extended to insert GIFs (which is especially useful in Hangouts) using another extension.
One of the few annoyances with Fleksy is that it has a tendency to insert a space after every word or punctuation when smart spaces are enabled (even when returning to a new line — the previous one will end with a space). This could probably be made smarter, but you can fortunately turn it off if it bothers you.
Multiple languages
If you regularly type in more than one language, switching between them is easy enough — you just need to swipe the space bar left or right. You’re also able to change the layout of the keyboard for any language, and choose from the usual layouts as well as Colemak and Dvorak.
Fans of dual language input will be slightly disappointed, however, as there is no way to get corrections in another language without switching to it.
Correcting input and predictions
Fleksy heavily relies on its auto-correction. The goal is to provide reliable corrections without requiring a high level of accuracy, and it seems to work most of the time. When it doesn’t, you can just swipe up to undo the last correction (you can also swipe up or down to go through the list of corrections, if the first one isn’t accurate). This also makes typing foreign, technical or swear words easier, and makes auto-correction slightly less frustrating when you don’t need it.
The “Editor” extension allows you to move the cursor left and right by dragging a bar at the top of your screen. It also adds buttons to quickly cut, copy, select and paste content, although you’ll still have to select the text the usual way.
Another plus is that this keyboard is able to import your contacts’ names, as well as words you use in your social accounts, emails and SMS messages. Unfortunately, Fleksy doesn’t seem to respect the system wide personal dictionaries, which can make switching from/between some keyboards a bit of a hassle. On the other hand, adding and removing words is pretty easy — you just need to swipe up once more after undoing a correction.
Themes and customizability
You are able to choose from a variety of themes: some will change the colors, others will also set an image background for the keyboard. While you’re not able to create your own themes, the available selection covers a wide range. Some extensions also provide additional eye candy, like “Rainbow Pops” which makes key pops colored.
The keyboard’s size can also be reduced to free up some screen space, if you find it too big. You can also hide the bottom bar (which contains the space bar, emoji and return button — the other buttons’ functions can be accessed using alternate methods) on the go by swiping down with two fingers (to show it again, you just need to do the opposite).
Other features
The “Launcher” extension might prove to be useful to some users. It basically acts like a mini launcher, allowing you to switch apps (e.g. messaging apps) easily from your keyboard.
Another neat extension is “Invisible Keyboard”. Not only does it turn your keyboard invisible, as its name applies, it also makes all of the screen available to the foreground app (with the keyboard acting as an overlay). This allows you to type without sacrificing any screen estate (although it will obviously block any clickable content below the keyboard), assuming you can get used to it.
Privacy
You can find Fleksy’s privacy policy here. You’ll need to have an Internet connection in order to download new languages or use cloud related features.
Download
Fleksy Keyboard Trial (30 days trial).
Fleksy Keyboard ($1.99).
Google Keyboard
Input
(Note that Google Keyboard and the AOSP keyboard are very similar, with the exception of some features that aren’t available in the AOSP keyboard, such as gesture typing and learning from Google services.)
Google Keyboard is a fairly traditional keyboard at first glance, but it actually comes with quite a bit of additional functionality. You can either type normally or enable gesture typing to swipe words (both can be used at the same time). The latter is quite accurate, and can even be used without lifting your finger at all by gliding over the space bar between words (although that often comes at the cost of accuracy).
To type numbers, you can either long press the top row or switch to the secondary pane. For symbols, you have the choice between switching panes and long pressing the “.” key instead, though the layout being slightly different from the secondary pane can cause some confusion. (You can also swipe from the “?123″ key, which instantly switches to the secondary pane.) If you prefer having a numbers row and more easily accessible symbols, you can enable the PC layout in the settings (unfortunately, this doesn’t provide arrow keys).
Emoji and text emoticons are easily accessible by long pressing the Enter key. Recently used emoji are also saved in the first tab. Additionally, a special dictionary can be installed to suggest emoji in some (very limited) cases.
You can also define text shortcuts through the system’s personal dictionaries, by adding or editing a word/phrase then specifying the shortcut. This allows you to type emails, phone numbers or common phrases more quickly.
Multiple languages
Multiple languages can be easily installed, after which you can switch between them by pressing the language key (if enabled), or long pressing the space bar. Dual language input isn’t supported by Google Keyboard.
Custom layouts can be defined for each language. You can choose from QWERTY, QWERTZ, AZERTY, Colemak, Dvorak and PC layouts.
Correcting input and predictions
Corrections seem fairly accurate, and the aggressiveness with which your mistakes get automatically corrected can be customized. The position of the letters is taken into consideration and saved, which is useful if you complete a phrase then want to go back to correct a word. However, it tends to forget those once you start editing the word, which in turn has the effect of turning slightly inaccurate suggestions into completely unrelated ones. You can press the backspace key to undo a correction right after it is made, but Google Keyboard doesn’t provide you with any additional tricks for editing past input.
The system wide custom dictionaries are used and respected. This can be handy if you switch between multiple keyboards that make use of them. Adding a word to the custom dictionary is as easy as tapping it.
Options are provided to add contacts’ names to the list of suggestions, using data from other Google services to learn words you commonly use, and to allow potentially offensive words. That last option still seems to give a higher priority to other words, though, so adding them to your dictionary can also come in handy.
Google Keyboard can offer next word predictions, if the option is enabled, but those seem rather dumb and only take the last word into consideration.
Themes and customizability
Holo and material themes are provided. They each come in two flavors: dark and light. That’s about it for customizing how your keyboard looks, although the material themes do look pretty good.
Privacy
The standard Google privacy policy applies. You can also opt out of usage statistics if you wish to do so. You need an Internet connection to download additional language packs.
Download
Google Keyboard (Free).
Hacker’s Keyboard
Input
Hacker’s Keyboard is mainly aimed at power users or those who want a PC-like experience. It comes in really handy when you’re in an SSH session thanks to the arrow and function keys (by default, the full PC layout is only used in landscape; you can change this in the settings).
When using the 4-row layout, numbers/symbols input is comparable to the Gingerbread keyboard — you can either long press keys or switch to the secondary pane. If you’re using the full 5-rows layout, however, you basically get your computer’s keyboard: numbers row, arrow keys, symbols that are accessible by long pressing keys or pressing Shift, etc. You can also use a numpad at any time by pressing the “Fn” key, which is very useful when you need to type lots of numbers.
Text shortcuts and emoji input are not supported.
Multiple languages
You can enable multiple languages from the keyboard’s settings, after which you’re able to switch between them by swiping the space bar left or right. Many languages do not have a dictionary available, though — you’ll get the layout and keys, but not the corrections. However, Some additional dictionaries can be downloaded from the Google Play store. Dual language input isn’t possible.
Custom layouts can be chosen for some languages (for example, English supports QWERTY and Dvorak), but not all.
Correcting input and predictions
Corrections are accurate, though they’re not automatic by default. Similarly to Google Keyboard, you can press the backspace key to undo a correction right after it is made.
Fixing past mistakes is a bit trickier than most keyboards, as tapping a misspelt word to correct it will not bring back the list of corrections. You’ll either have to correct the mistake manually, remove the word and type it again, or rely on the Android built-in spell checker (available since ICS).
Hacker’s Keyboard offers no predictions, which might make it less attractive to people who rely on them but would like to have the same fully fledged keyboard for both power and casual use.
Themes and customizability
Hacker’s Keyboard comes with a few themes: Gingerbread, ICS, Stone and Transparent. The keyboard’s size is very customizable, and so are most of its features (to list a few: sent key codes, suggested punctuation, long press pop-up keys; some of these can be very useful when using a terminal or coding on the go). You can also define custom gestures, although the available actions are a bit limited.
Other features
You’ll find all the keys you’d expect to see on your PC’s keyboard (arrows, function keys (F1-F12), Esc key, etc). These are extremely useful when using a terminal app or coding.
Privacy
Minimal permissions are required. Hacker’s Keyboard does not connect to the Internet at all.
Download
Hacker’s Keyboard on the Google Play store (Free).
Hacker’s Keyboard Google Code page.
Hodor Keyboard
Input
Hodor. Hodor Hodor Hodor HODOR HODOR.
Multiple languages
Hodor.
Correcting input and predictions
Hodor?
Privacy
Hodor!
Download
Hodor Keyboard Lite (Free).
Hodor Keyboard ($0.99).
Minuum
Input
Minuum is designed to take the least amount of screen space possible, but you can switch between the full keyboard and the minimized version with ease by dragging the suggestions bar up or down (or by pressing and holding the keyboard with two fingers).
In the full layout, you can type the letters or swipe up from any letter to input its corresponding secondary key (for example, you can swipe up from the “T” key to type “5”, or from the “V” key for “?”). Common punctuation characters can also be chosen quickly by swiping to the left/right from the “.” key, or by double tapping the space bar — all of this makes typing numbers and symbols pretty fast. You can also access a numpad and more symbols by switching to the secondary pane.
When minimized, Minuum only shows you one row of letters, saving a lot of screen estate. All of the above still applies, with the exception of the numpad. Swiping up can also be used to increased accuracy, as it “zooms” the letters in.
Gestures allow you to delete words by swiping to the left, inserting spaces (and completing the current word) by swiping to the right and going to a new line by swiping up and right. Swiping up and left can either activate voice recognition or change languages, depending on your settings.
Auto-spacing is optional and seems to work well in most cases.
Emoji input is supported, although there isn’t a pane for recently/frequently used emoji (however, if you use the experimental emoji bonus panel, recently used ones are displayed first; this adds an extra row to your keyboard but can be toggled dynamically). If you’re using a vendor themed ROM, there is an option to have Minuum use the Noto font for emoji (the default typeface used by Google). Text shortcuts cannot be defined.
Multiple languages
Only a dozen languages are supported at the moment. You can freely change each language’s layout between QWERTY, QWERTZ, AZERTY, Colemak, Dvorak and alphabetical layouts.
Switching languages is easy: you can either long press the space bar, or swipe up and left if you’ve replaced the voice button by the language button. You don’t need to, though, since you can use multiple languages simultaneously and Minuum will guess which language you need rather accurately (and if not, you can always force the language you want).
Correcting input and predictions
Minuum heavily relies on auto-correction, especially when the keyboard is minimized. It’s surprisingly accurate, too. If you want to correct a word, you can go back to it (the experimental cursor bonus panel helps with that) and select another suggestion. Auto-correction can also be turned off with the tap of a button (“sloppy typing”), allowing you to type whatever your heart desires, be it a series of abbreviations or your special lingo.
While you can import words from the Android user dictionary, there doesn’t seem to be a way to view, edit or remove learned words easily. You can make Minuum forget words by long pressing them in the suggestions pane, though. An option is also provided to learn the names of your contacts.
As for predictions, they seem to be very simplistic.
Themes and customizability
Minuum is very customizable — you can choose from a dozen of themes (some even change depending on the app or time of day), or make your own (however, you can’t specify a background image, only colors).
Other than that, you’re able to modify several features. To list a few, you can enable or disable gestures, get rid of the space bar row when Minuum is minimized and customize the keyboard’s height.
Other features
Other than the ones mentioned above, you can also enable bonus panels to edit the clipboard or to share/search for text you’ve typed.
Compact and floating modes are also available, which respectively let you dock the keyboard to the right or left, or freely move it around the screen and resize it. Unfortunately, there is no quick way to switch between the modes.
Privacy
You can review Minuum’s privacy policy here. An Internet connection is required to download language packs.
Download
Minuum Keyboard Free (30 days trial).
Minuum Keyboard ($3.99).
Multiling O Keyboard
Input
Typing and swiping are both supported. The tolerance can be configured for each, though they still require more precision compared to other keyboard (especially swiping). Swiping to the space bar between words for continuous input is possible, though it doesn’t seem to work for more than two consecutive words.
Symbols are shown on the main keyboard. You can long press a button or swipe down from it to insert the symbol you want (this works for all secondary characters, not only punctuation), or swipe from the “.” or “,” keys (each shows a different set of symbols; you can customize these symbols as you wish). Typing capitals is done by swiping up instead. The keyboard really makes good use of gestures for quick input.
Several layouts are available (you can even make your own from scratch), and you can easily switch between them at any time by swiping from the space bar. Some of them include a row for numbers, others include arrow keys, etc.
Emoji and text shortcuts are both supported. Add-ons are required for this, and can be installed from the Google Play store or the website. Text shortcuts are defined from the settings screen (a shortcut is to swipe from the gear key to “autotext” on the keyboard). Emoji are separated into several categories (around 30), which can take some time to get used to, but generally makes finding emoji easier. Text emoji and many rarely used symbols are also listed (e.g. ♜ ♘ ♞ ✔ ✓ ✘).
Multiple languages
Language packs are installed from the Google Play store or the website. Switching between them is a breeze, even when you’ve got half a dozen — simply swiping from the space bar can list up to half a dozen languages, allowing you to select any of them easily.
Switching layouts is done in a similar manner, and you can even make your own. Pre-made layouts include QWERTY, QWERTZ, AZERTY, Dvorak, Colemak, Neo, Bépo, several variations of QWERTY, a phone keypad and then some.
Correcting input and predictions
Undoing a correction is done by pressing the backspace button after it is made. To learn a word, you can touch it in the suggestions bar. You can also increase or decrease the rank of any word by long pressing it in the suggestions bar then tapping on the option you want.
Selecting previous words to correct them always moves the cursor to the end of the word the first time you try it. This makes going to a certain character harder than it needs to be.
Arrow keys and cursor control keys are easily accessible in any layout by swiping from the gear button, and might be on the main pane in certain layouts as well.
Predictions are non existent at first, but learn from your typing habits as you go. You can also paste any text you want and have the keyboard learn from it, by swiping from the gear key to “Learn”. Default predictions are customizable and can be used for punctuation, dates, copying and pasting from the clipboard and more.
Themes and customizability
Let’s get this out of the way: this keyboard is ridiculously customizable. Pretty much every aspect of it is: fonts and colors, wallpapers, key layouts, long press contents, and a lot more. Don’t like the available layouts? Make your own, from scratch. Many themes can be downloaded from the website, and you’re able to share the ones you make easily.
This can be overwhelming for many users, but the defaults are very usable and many pre-made themes and layouts are available. The help document also covers most of the keyboard’s aspects.
Let’s say it one more time: ridiculously customizable.
Other features
Transformations can be applied to selected text, allowing you to easily quote text or put it between parentheses. Funky text transformations can also be used to translate text, use full width, exotic or emoji characters, change the case of the selection and more.
Using the phonepad can be used to make and input calculations with ease.
Transliteration is available for some languages. Useful dictionaries such as Linux commands and Hinglish can also be downloaded.
Several other features are also available, but many fall within the “crazy customization” category.
Privacy
Multiling O Keyboard does not have Internet access. Additional languages and add-ons are installed as separate packages.
Download
Multiling O Keyboard (Free).
MyScript Stylus
Input
MyScript Stylus understands your handwriting, and it really is accurate (even without a stylus). Using it is intuitive and works for letters, numbers and symbols, and several gestures are provided to make usage easier (for example, you can go to a new line by swiping down then left).
Unfortunately, that is the only input mode available. It is very useful for language layouts you might not be familiar with (e.g. Arabic) even though you have no problem writing it, but using a traditional keyboard is much faster otherwise.
Text shortcuts and emoji are not supported.
Multiple languages
Several languages are supported, and dictionaries help by providing accurate corrections and suggestions. Switching between languages can be done by tapping the language button, but dual language input is not possible. The layout adapts correctly to RTL languages.
Correcting input and predictions
Correcting input is rather easy — to remove text, you can just scribble it. If you want to replace something, all you need to do is write over it. You can even split words by literally splitting it with your finger, giving you space to write between the two parts, or join them by drawing a bridge between the letters.
Predictions are not supported, and there doesn’t seem to be a custom dictionary for user defined words.
Themes and customizability
Options are provided to modify the text size, color, ink thickness, scrolling speed and baseline position. This allows you to adjust the keyboard for better results, although the looks can’t be heavily customized.
Privacy
You can read MyScript’s privacy policy here. Full Internet access is required to download additional language data.
Download
MyScript Stylus (Beta) (Free; time limited copy).
NextApp Keyboard
Input
If Hacker’s Keyboard and the AOSP Keyboard had a baby, it would probably look like this. It’s actually based on the AOSP Keyboard (which means it’s also similar to Google Keyboard in many aspects).
NextApp Keyboard supports both normal typing and gesture typing. The latter requires a compatible binary library, which you can usually find as /system/lib/libjni_latinime.so if you have Google Keyboard installed. Gesture typing is quite accurate. Note that gliding over the space bar cannot be used to separate words.
You can access numbers and symbols by long pressing the top row or tapping the “(+%” button (you can also swipe from this button, which directly switches to the secondary pane). You can also enable a row for numbers from the settings screen or the “mini” configuration pane, without leaving the current application. A pleasing surprise is that doing so actually removes the numbers from the secondary pane completely, and makes all symbols fit on the same page.
You can use emoji and text emoticons by long pressing the Enter key. Emoji you’ve used recently are saved in the first tab. Custom text shortcuts can be defined in the system’s personal dictionaries, as NextApp Keyboard respects that.
Multiple languages
Additional languages can be enabled from the settings menu. Switching between them is done using the language key, or by long pressing the space bar. Simultaneous language input isn’t supported.
Custom layouts can be defined for each language. You can choose from QWERTY, QWERTZ, AZERTY, Colemak and Dvorak. The PC layout can be toggled at any time from the mini configuration pane.
Correcting input and predictions
Offered corrections are usually accurate, and you can modify the aggressiveness for automatic correction in the settings. If you want to undo a correction, you can press the backspace key right after it is made. The arrow keys also come in handy to move the cursor when correcting mistakes or trying to select text.
The system user dictionaries are used and respected. The transition from the AOSP keyboard and Google Keyboard are seamless, as defined text shortcuts also work out of the box. Adding a word to the user dictionary only requires a tap.
Contact names can be taken into consideration for corrections, if the option is enabled in the keyboard’s settings. Another option allows offensive words, though adding these to your dictionary might have a better effect.
Next word predictions are offered as an option, though they’re not very smart.
Themes and customizability
You can select one of several themes for the keyboard: Holo, Material Design, Flat and seven more. Other customization options are also available, allowing you to modify the keyboard’s size, typeface, behavior for some terminal apps and then some.
Other features
All keys you’d expect to see on your PC’s keyboard (arrows, function keys (F1-F12), Esc key, etc) and Ctrl- combinations are provided. These are extremely useful when using a terminal app or coding.
Privacy
NextApp Keyboard can only download files (for language packs), and does not have full Internet access.
Download
NextApp Keyboard is currently in beta, during which paid features can be tried for free.
NextApp Keyboard on the Google Play store (Free)
NextApp Keyboard on XDA.
SwiftKey
Input
SwiftKey supports both typing and gesture typing (called “Flow”) — the latter is optional and can be disabled in the settings. Flow is very accurate, even when used to input entire phrases without lifting your finger (this is done by passing by the space bar between words).
Numbers and symbols can be seen on the main keyboard and are accessed by long pressing the corresponding key, or by switching to the secondary pane (which offers a numpad for inputting numbers). The secondary pane’s layout is entirely different from the primary pane’s, which may take some time to get used to. Additionally, a numbers row can be enabled in the settings. Common punctuation can also be quickly inputted by swiping left or right from the “.” button.
If Flow is disabled, two gestures can be used: swiping left deletes the previous word, and swiping down hides the keyboard. Otherwise, long pressing the back space key removes the words one by one.
The keyboard supports emoji and offers a tab for recently used ones, although the emoji pane’s scrolling lags noticeably and doesn’t integrate very well with themes. Emoji predictions can also be enabled in the settings screen, which suggests emoji relevant to the word you’re typing (e.g. typing “smile” suggests the smiling face). It is not possible to define text shortcuts.
SwiftKey inserts a space after every word or punctuation. This behavior cannot be modified, and could be annoying to some users.
Multiple languages
You can install and enable additional languages from the settings activity. SwiftKey lets you type simultaneously in up to three languages (you don’t need to switch manually between them).
You can modify this behavior by changing one of the languages’ layout, but it’s not possible to separate the different languages while having them use the same layout.
Available custom layouts are: QWERTY, QWERTZ, QZERTY, AZERTY, Bépo, Colemak and Dvorak.
Correcting input and predictions
Corrections and predictions are excellent, and are what made SwiftKey so popular in the first place. New words are learned automatically. While you can’t turn this off, long pressing a suggestion is enough to make SwiftKey forget it.
Selecting previous words is a bit wonky — pressing the middle of a word to correct it, for example, will move the cursor to its end the first time you do it (tapping again works as intended). This can make correcting a letter slightly more frustrating that it needs to be, but you can get used to it.
An additional row for arrows keys can be added, which can help with positioning the cursor and correcting mistakes.
The Android user dictionary is not used, and contact names don’t appear to be imported.
Themes and customizability
Fifteen free themes come pre-installed with the keyboard. Additional themes, paid and free, can be downloaded from the SwiftKey Store. A few themes put the designers’ skills into serious doubt, but you can also find some good choices.
Other features
SwiftKey Cloud allows you to import new words from sent emails and social networking posts. It also backs your data up and sync it across multiple devices. Finally, it enables “Trending Phrases”, which makes SwiftKey aware of trending expressions for predictions.
You can also choose from three different keyboard modes without leaving the current application, by long pressing the “123” key: “Full” is the traditional mode, “Thumb” splits the keyboard for easier typing with your thumbs, and “Compact” shifts the key to the left or right to make one finger typing easier.
You can also undock and resize the keyboard with the same method as above.
Privacy
You can find SwiftKey’s privacy policy here. An Internet connection is required to download additional languages, themes, and to access cloud related features.
Download
SwiftKey Keyboard (Free).
Swype
Input
Swype’s intended input method is, as you might have guessed, swiping, which is pretty accurate. You can also type normally or use handwriting, although handwriting recognition is lacking in accuracy.
Several gestures are available and make swiping much easier. For punctuation, simply swipe from the one you want to the space bar (though this starts inserting spaces before punctuation when you’re trying to input more than one). You can also capitalize any letter by swiping over the keyboard after reaching it.
Swiping from the Swype key to the numbers row also switches to the numpad, allowing you to type numbers with ease. Alternatively, you can long press keys to access secondary characters, or switch to the symbols pane.
Swype does not support emoji or text shortcuts, but there’s a pop-up for text emoticons. You can also swipe over the relevant keys (e.g. “:”, “-” and “(“) and Swype will suggest the correct text emoticon.
Multiple languages
Several languages are supported (but not all can be used for handwriting). Switching between languages is done by long pressing the space bar, but switching back to the last language is as easy as swiping from the Swype key to the space bar. Dual language support is also supported.
You can change each language’s layout to one of the following: QWERTY, QWERTZ and AZERTY.
Correcting input and predictions
A pane with cursor keys and extra buttons for cursor and clipboard control can be used (Swype-“?123″) to make editing and correcting input easier. Swype also tries to suggest smarter corrections when you go back to a word, by looking at the word before and after it.
To learn a new word, you have to tap it in the suggestions bar then tap “Add to dictionary” (you can also set the keyboard to automatically learn new words). Forgetting words is done by long pressing a suggestion. You can also edit the Swype’s dictionary from the settings menu. Importing the Android user dictionary or contact names is not possible.
Next word predictions are optional but fairly simple.
Themes and customizability
A dozen themes can be used with Swype, but you cannot create your own. There are also a few customization options, such as changing the keyboard’s height
Other features
Swype uses its own engine for voice dictation, “Dragon Dictation”.
Optional cloud features allow you to backup and sync learned words, automatically update Swype with trending words, or learn from social networks (Facebook and Twitter) and sent emails.
Additional gestures are provided to select all text (Swype-A), and to copy (Swype-C), cut (Swype-X) or paste (Swype-P) text, as well as launching Google Maps (Swype-G-M) for some reason and searching for the highlighted text (Swype-S). Tapping the Swype symbol also selects the current word, which can be used to easily replace it. Automatic spacing can be disabled by swiping from the Swype symbol to the backspace key — this is useful for compound words.
Privacy
You can find Nuance’s privacy policy here (Nuance is the company behind Swype). An Internet connection is required to download additional languages, to use Dragon dictation, and to access cloud related features. Data collection is optional and you must opt-in for it.
Download
Swype Keyboard Free (30 days trial).
Swype Keyboard ($0.99).
Thumb Keyboard
Input
Typing with Thumb Keyboard is quite comfortable, and the different layouts and key spacing settings can be used to make it fit your needs.
Swiping up, down, left or right can be assigned to custom actions such as deleting words, moving the cursor or bringing up text shortcuts. Sensitivity is configurable as well, should you keep activating gestures by mistake.
Numbers and symbols are shown as secondary keys on the main keyboard, or even as primary keys depending on the used layout. Either long press the relevant key or switch to the secondary pane (“?123″) to input them. An additional row can be toggled at any time from the keyboard, and can be configured to contain special characters and shortcuts (e.g. arrow keys, copy/paste, etc) as you desire.
Text shortcuts can be defined and used from the keyboard. Custom labels can be assigned for each for easy identification. Text substitutions are separate, but also available from the settings screen.
Emoji aren’t supported at the moment. Typing quickly sometimes confuses the keyboard (for example, “kekeyboard” is typed instead of “keyboard”).
Multiple languages
Switching between installed languages is done by sliding the space bar, after you’ve installed them from the settings activity. Dual language input is not possible.
Available alternative keyboard layouts are QWERTY, QWERTZ and AZERTY.
Correcting input and predictions
Corrections are pretty good. Corrected words are subtly underlined, and the original word you typed is saved and can be easily restored. Backspacing after a correction is made also undoes it.
To teach the keyboard new words, you can tap it twice in the suggestions bar. Removing words from the dictionary can only be done from the settings.
Words from the Android user dictionary and contact names are automatically imported, although text substitutions are not and must be redefined manually.
Next word predictions are sort of available — your typing habits are learned, but only used once you start typing the next word (for example, if you often type “XDA developers”, “developers” will be the first suggestion after you type “XDA d”.
Themes and customizability
Around 25 themes are available (some are built-in, others need to be downloaded). Custom colors, fonts and backgrounds can also be used to modify parts or all of the theme.
Many other customization options are also offered, such as the ability to modify the keyboard’s size, edit secondary symbols, pick different layouts for portrait and landscape, etc.
Other features
Several different layouts can be used: other than the standard layout, you can dynamically switch to large and compact split layouts, giving you direct access to numbers, punctuation or arrow keys. Tablets and phones each have specifically designed layouts.
Privacy
An Internet connection is required to download additional languages and themes.
Download
Thumb Keyboard ($2.49).
TouchPal
Input
TouchPal supports both typing and gesture typing (called “Curve”). The latter is optional and fairly accurate.
To input secondary characters (numbers and symbols), you can either long press the primary key or swipe it up or down for the top and bottom rows. Inputting numbers and punctuation is made much quicker by this feature. You can also switch to the secondary pane, which also has a numpad.
The keyboard supports emoji (recently used ones are also stored in a separate tab), “emoji art” (similar to ASCII art, but uses emoji) and text emoticons. You can access the emoji screen by either tapping the emoji button, or by flicking the space bar up. Emoji suggestions can also be enabled, making them come up when relevant keywords are typed (for example, typing “smile” suggests the smiling face). Text shortcuts are not supported.
Multiple languages
You can install extra languages in the settings screen. Switching languages is usually done by swiping the space bar, but this can be configured if you prefer having an extra key for it.
Mixed language input allows each language to have a secondary language for which words are also predicted/corrected from (for example, you could use English and French, and then English and Spanish, as two different layouts).
Correcting input and predictions
Adding a word to the custom dictionary is done by tapping it in the suggestions bar (you can also enable auto saving). To edit or remove a word, you can long press it when it comes up in the suggestions or via the settings screen. The Android user dictionary is automatically imported when you first use the keyboard, and you can also import contact names and have TouchPal learn from messages and Twitter.
You can also access the “Edit” screen, which offers arrow keys and buttons to select text more accurately.
Prediction is optional. It learns from what you type and gets better… if you’re predictable. “Wave” is an interesting feature that puts predictions directly on the keyboard (e.g. “next” appear next to the “n”), and lets you swipe from it to the space bar for faster input.
Themes and customizability
TouchPal comes with two built-in themes and an option to set a custom image as the keyboard’s background. You can download more themes from the TouchPal store (paid and free themes are available).
Additional options can be used to customize the keyboard’s size and font, as well as other minor settings.
Other features
TouchPal lets you choose from three main layouts: PhonePad (T9), Full and T+ (which combines two letters and one symbol on each key). You can do this without leaving the currently opened app. For the Full layout, you can also choose between QWERTY, QWERTZ and AZERTY.
You can pin several buttons to the top bar, which also acts as a suggestions bar once you start typing. These include buttons to quickly access: layouts, the edit screen (offers cursor and clipboard control), themes and more.
Add-ons (currently limited to a custom emoji skin) and sub dictionaries can be downloaded from the TouchPal store. Sub dictionaries add or prioritize jargon (e.g. words related to computers or to the World Cup) or place names (such as Chicago locations).
Word trends are enabled by default, and make your keyboard aware of trending words automatically.
TouchPal Premium ($2.99/year) gives you access to backup and sync features, as well as cloud predictions — smarter predictions from the Internet. A 7-days trial is available.
Privacy
You can find TouchPal’s privacy policy here. An Internet connection is required to download additional languages, dictionaries, themes, addons, and to access cloud related features.
Download
TouchPal Keyboard on the Google Play store (Free).
TouchPal Keyboard on XDA.
Summary Table
Note that this table oversimplifies some aspects and completely omits others. It is not meant as a means to compare the different keyboards, but to provide you with a quick idea to see if a keyboard might be suitable for you (for example, if you only want a keyboard that supports emoji, you’ll be able to see which keyboards to check quickly).
For additional details, refer to the in-depth review.
Gesture input
Numbers row
Text shortcuts
Emoji
Multiple language input
Predictions
Themes
ai.type
✓
✓
✓
✓
✗
✓
✓
Fleksy
✗
✓
✓
✓
✗
✗
✓
Google Keyboard
✓
✓
✓
✓
✗
✓
✓
Hacker’s Keyboard
✗
✓
✗
✗
✗
✗
✓
Hodor Keyboard
✗
✗
✗
✗
✗
✗
✗
Minuum
✗
✗
✗
✓
✓
✓
✓
Multiling O Keyboard
✓
✓
✓
✓
✗
✓
✓
MyScript Stylus
Handwriting
✗
✗
✗
✗
✗
✗
NextApp Keyboard
✓
✓
✓
✓
✗
✓
✓
SwiftKey
✓
✓
✗
✓
✓
✓
✓
Swype
Swiping & Handwriting
✗
✗
✗
✓
✓
✓
Thumb Keyboard
✗
✓
✓
✗
✗
✓
✓
TouchPal
✓
✗
✗
✓
✓
✓
✓
The post Guide: In-Depth Look at the Best Android Keyboards appeared first on xda-developers.