iOS 8 Third-Party Keyboards Explained and Reviewed
One of the most intriguing features of iOS 8 is how Apple opened it up to third-party keyboards. Google’s Android mobile operating system has allowed developers to create custom system keyboards for years, which has led to interesting experiments, like Swype, which lets you draw on the keyboard to spell out words.
At long last, keyboards like Swype are available for iOS, but how you enable and use them isn’t always obvious. Also of concern is how these third-party keyboards, some of which connect to the Internet, impact your privacy.
Setting Up Third-Party Keyboards — So you’ve heard about a keyboard, perhaps in this article, and you want to install it. The first thing to know is that keyboards are inherently associated with apps — if you want the Fleksy keyboard, you need to download and install the Fleksy app from the App Store. What next?
Somewhat confusingly, you don’t activate the keyboard from the app itself, though the app may give you instructions on how to do so.
Instead, here’s how to set up a keyboard: navigate to Settings > General > Keyboard > Keyboards > Add New Keyboard. You should see a heading titled Third-Party Keyboards. Under that, tap the keyboard you want to add. That will usually add the keyboard, though in some cases, you might have to choose a specific option. For instance, Smile’s TextExpander offers keyboards for five languages.
So what’s the app for, if you don’t add the keyboard from it? For most of the keyboards I tested, the container app offers additional settings, instructions, or even a space to practice with the keyboard. It may also provide some of the keyboard’s data or capabilities, as it does in the case of TextExpander. And of course, the app is how the keyboard gets into the App Store.
What Is Full Access? — Most of the keyboards I’ve tested require you to turn on Full Access by going to Settings > General > Keyboard > Keyboards, tapping the keyboard’s name, and then toggling the Allow Full Access switch.
After this, you’re given a stern warning before confirming that you indeed want to enable Full Access:
Full access allows the developer of this keyboard to transmit anything you type, including things you have previously typed with this keyboard. This could include sensitive information such as your credit card number or street address.
Yikes! But if you don’t enable Full Access, some keyboards are unusable. For instance, PopKey, which lets you type with animated GIFs, shows only emoticons until you enable Full Access. When Full Access is off, SwiftKey disables most of its features, like autocorrect, word suggestions, and SwiftKey Flow, and displays an obnoxious warning message.
However, even without Full Access, most keyboards work, just with fewer features. For example, Fleksy works fine, but you won’t be able to change settings, add new languages, add words to its dictionary, and other fairly minor things.
What does Full Access do, exactly? In the simplest terms, it enables the keyboard to communicate with its host app. There is nothing wrong with this, in and of itself. For example, for TextExpander to expand a text snippet, it needs to be able to look the snippet up in its database. On the flip side, that means that a keyboard can do anything an app can do, include transmit information, like keystrokes, over the Internet.
Unfortunately, this means that we likely won’t see more granular options for keyboard access in the future unless Apple re-engineers how third-party keyboards function.
However, as Smile founder Greg Scown pointed out in a blog post, apps have always been able to store and transmit your keystrokes. The difference is that there are now specific controls to prevent such behavior, and that capability is mostly system-wide.
Apple does limit third-party keyboards in certain ways to protect users. They cannot access the microphone or type into secure input fields (which should include all password fields, in theory), and app developers can bar the use of third-party keyboards in apps where the data is highly confidential, such as banking apps.
Apple also offers the following App Store review guidelines:
- Keyboard extensions must remain functional with no network access or they will be rejected.
- Apps offering Keyboard extensions must have a primary category of Utilities and a privacy policy or they will be rejected.
- Apps offering Keyboard extensions may only collect user activity to enhance the functionality of their keyboard extension on the iOS device or they may be rejected.
In theory, if a third-party keyboard were to do unscrupulous things with your keystrokes, Apple wouldn’t allow it in the App Store to begin with, and if it somehow slipped through, Apple would boot it from the App Store. But the information would have to leak out somehow for Apple to even know it should act.
In its developer documentation, Apple outlines certain things a keyboard should do, such as autocorrection and suggestion, which are the sort of things SwiftKey requires Full Access for. But Apple’s own guidelines say that a keyboard must remain functional with no network access. What is Apple’s exact definition of “functional?”
In reality, the only thing a keyboard absolutely has to do is provide a way to switch to the next keyboard.
Using Third-Party Keyboards — After setting up a keyboard, how do you use it? Tap a text field to bring up the keyboard, then tap the Next Keyboard key (it looks like a globe) in the lower left. You can also hold this button to see a popover list of available keyboards. Tap one to switch to it.
The more complex question is how to switch between third-party keyboards. Apple specifies that every keyboard must provide a way to switch between keyboards, but it unfortunately doesn’t specify a single way of doing that.
As a result, switching between keyboards looks and works a bit differently in each keyboard — it’s a mess:
- Fleksy: press and hold the globe key
- PopKey: tap the globe key
- SwiftKey: tap the globe key
- TextExpander: tap the Smile mascot
- Swype: press and hold the Swype icon, then slide your finger over the globe popover
If you have several keyboards enabled, switching between them is infuriating. Not only can there be a different method every time, but the keys are often in different places. Even Apple’s own emoji keyboard is guilty of this user interface offense, moving the Next Keyboard key one space to the left from the U.S. English system keyboard.
Even worse, developers can’t integrate the keyboard selection popover, so once you’ve switched to a third-party keyboard, you have to cycle through the rest one at a time.
Where Apple Can Improve — It’s early days for third-party keyboards, and there’s much Apple could do to improve the experience.
First, switching between keyboards has to become a smoother experience. Apple needs to give developers access to the keyboard selection popover so users can switch between keyboards quickly, and it should specify a location, name, and icon for the key that switches keyboards. Under the current rules, switching keyboards could technically be done via a gesture, leaving users to guess even more than they already have to.
Second, there are many more keyboard resources Apple could open up to developers, like iOS 8’s auto-correction and text-prediction mechanisms. As it stands, developers must recreate every keyboard feature from scratch, which makes keyboards look and work significantly differently from the standard iOS 8 keyboard, which hurts the user experience unnecessarily. Ideally, an app could use the standard keyboard as a jumping-off point, and change only the desired functionality, rather than start from scratch.
Third, I’d like to see better privacy controls for keyboards. Perhaps I’m just paranoid because I’m not accustomed to the possibility of my keystrokes being recorded, but right now, you have the choice between letting developers do anything and having a partially functional keyboard. I’d like to see more granular privacy settings for keyboard container apps.
My Keyboard Recommendations — For the sake of simplicity, I’m going to divide keyboards into two categories: replacement keyboards and utility keyboards. In my terms, a replacement keyboard is a keyboard that’s trying to reinvent how you enter text across the board. In this category, I’d put apps like Fleksy, SwiftKey, and Swype.
Utility keyboards, in contrast, are those that offer capabilities unavailable on the standard keyboard. PopKey is a perfect example, since it types not with text, but with animated GIFs. I’d also include keyboards like TextExpander, since it’s handy to have access to your snippets throughout iOS, but you wouldn’t necessarily want to use it as your main keyboard in all apps.
The reason I’ve defined those categories is because my first recommendation is to pick one main keyboard (either the system keyboard or one of the replacement keyboards), and one or two utility keyboards, if needed, to augment it. You don’t want to enable too many keyboards at once or you’ll grow frustrated trying to switch between them. Two example setups might be:
- System keyboard, emoji, PopKey
- System keyboard, Swype, TextExpander (TextExpander snippets can insert emoji)
As far as main keyboards go, I have yet to find anything that compares to Apple’s system keyboard. It’s accurate, dependable, and best of all, is free and familiar. And with QuickType suggestions in iOS 8, typing is faster than ever before.
But if you’re looking for an alternative to Apple’s keyboard, Swype ($0.99) is currently one of the best, most polished options. Its innovative draw-to-type feature was invented by Cliff Kushler, who also developed T9 text input for traditional cell phones. I’m personally not a fan of drawing on my keyboard, but if you want to try it, Swype is the original and best.
Other interesting replacement keyboards are Fleksy ($0.99), which focuses on gestures, and Minuum ($1.99), which uses a hyper-compressed keyboard, depending on smart text prediction to get your wording right. I found both a bit too weird to use on a regular basis, but you may have better results.
The problem with replacement keyboards is that while many promise to save you time, they’re different enough from what we’re all used to that it takes time to adapt. Whether the time you save in the long run is worth the learning curve is questionable. Also, since you can’t use third-party keyboards in every situation, getting used to one and then having to go back to Apple’s, could be confusing.
I’d also like to take a second to discuss SwiftKey. One of the most popular Android third-party keyboards, SwiftKey is a jack of all trades, offering smart text prediction, Swype-like word drawing, and many other features.
But I don’t trust it. I didn’t trust it on Android, and I don’t trust it on iOS. There are a few reasons for this:
- It’s free. On Android, SwiftKey makes money by selling themes and other features through in-app purchases. But those have not arrived on iOS yet. There has also been talk of offering advertisements on the keyboard, though that is expressly forbidden by Apple’s App Store guidelines. In any case, I’m unconvinced by these business models, and I’m less trustful of companies that don’t seem to have a clear, dependable revenue stream.
-
It’s more insistent about requiring Full Access than any of the other replacement keyboards I’ve tried, to the point that it’s practically unusable without it.
-
It “helpfully” offers to scan my Facebook and Gmail accounts to learn my writing style. Creepy. No thank you.
The company addresses these concerns in a blog post, which explains that SwiftKey requires Full Access for advanced features, saying, “It is worth stating very clearly, however, that no language information leaves your device at all unless you opt in to our SwiftKey Cloud service to get these benefits.”
I remain unconvinced. But SwiftKey costs nothing to try, so let your judgment guide you.
I’m much more optimistic about utility keyboards. My current favorite is PopKey (free), which provides a database of animated GIFs, sorted by the feeling you wish to express. I like to think of them as advanced emoji. A winky face is one thing, but an animation of a famous actor slowly raising an eyebrow says so much more.
One thing I dislike about PopKey is that it required me to sign up with an email address and provide a phone number so I could receive an activation code. I never received the activation code, but the keyboard works anyway. Adrian Salamunovic, co-founder of PopKey developer WorkshopX Inc., told me that registration is needed to upload your own GIFs and transfer them between devices, and that the phone number activation is simply to make registration faster. Salamunovic also confirmed that it helps thwart the uploading of offensive or illegal content.
A less-invasive alternative to PopKey is Riffsy (free), though I’ve found Riffsy to be less reliable, and the images it provides tend to be all over the place size-wise, while PopKey provides consistently sized images. Both keyboards require Full Access to function. However, in this case, I don’t care, because what could anyone determine from animated GIFs I insert?
I’m also a fan of the new TextExpander ($4.99), which includes a third-party keyboard. Having access to my snippets everywhere in iOS is game-changing, especially since Apple’s iCloud sync of its own text shortcut implementation is unreliable. But I can’t yet recommend TextExpander as a main keyboard, since it still has some rough edges. It doesn’t offer any word suggestions, and a bug in the iPhone 6 and iPhone 6 Plus causes the keyboard to expand and contract somewhat randomly. (I’ve been informed that a fix has been submitted to Apple, and is awaiting approval.) TextExpander also requires Full Access, but developer
Smile (a longtime TidBITS sponsor) has a golden reputation, as well as an actual business model, so I’m totally happy to grant Full Access.
Third-party keyboards have a long way to go in iOS, but this is only the beginning. The entire situation will only improve with time, and even if you don’t care for any third-party keyboards now, they are entirely optional. My own misgivings aside, I’m thrilled that Apple has opened up this avenue for developers and users to address the significant problem of text entry in iOS.
To learn more about the power of iOS 8, pre-order my upcoming book, “iOS 8: A Take Control Crash Course,” which will cover third-party keyboards and other new features that will change the way you use your iOS devices.
It would be trivial for apple to improve the privacy of keyboards, and other apps too. All they have to do, and should have done years ago, is to add a Network Access section to the privacy settings along with Location, Contacts, and the others. Many of the apps I want to use, such as Paperless, have zero justification for net access unless you turn on sync (which I don't want), but most of them keep nagging me to turn on cell data, which makes me wonder what the heck they’re up to.
I really want Little Snitch for iOS, so I could restrict e.g. an email app to access only my servers. My only recourse is to set up VPN or a proxy on my server and filter there. Since that’s a ton of trouble compared to true on-device network settings, I end up not doing a lot of things on iOS that I'd like to because I can't find apps I both like and trust.
Not an option for everyone but exactly one of the reasons I jailbreak my phones. Firewall IP does exactly this, showing you exactly where your apps are trying to call out to. Quite scary finding just how many places apps are making connections to behind the scenes.
and also the reason i feel so uncomfortable with a stock phone. I upgraded to a 6 and and waiting with baited breath for a jailbreak so i can re-install FiP. I should be able to decide what applications use my network connection.
Keep in mind that we're seeing a number of attacks aimed at jailbroken iPhones, so you'll want to be extra careful if you do jailbreak.
"With great power comes great responsibility." or something like that.
I'm on-the-fence about jailbreaking my 6. A JB means possible access to the TouchID sensor, whatever is hidden in the SecureEnclave, and possible access to Pay data. This is going to make iOS a much bigger target. Apple will be doing it's best to protect data, but the same can't be said for the JB community (sorry guys, but it's a simple fact).
It would help somewhat, but some keyboards still have legitimate need for downloads. For example, SwiftKey needs to download language models and their occasional updates – the alternative would be to include all 68 languages in a single app, which would be incredibly wasteful. And trying to distinguish between innocent downloads and malicious keylogging seems like a losing proposition.
Anybody remember the FITALY keyboard for the Palm? Yeah, Steve said "No styli" but, that one worked well! With old eyeballs and fat fingers, I would like to see something like that again. There was a learning curve, but, it worked!
One disappointment for me with the iOS 8 keyboards - both Apple and third-party - is that none offer arrow keys, at least on my iPad Air. (Some reports say, curiously, that some of the keyboards do have arrow keys on the iPhone 6, at least in landscape mode.) I use SwiftKey on a Galaxy Note and find the arrow keys a tremendous convenience.
The other feature I really appreciate in SwiftKey on Android is the ability to enter numbers and punctuation with just a long press on alpha keys. (Apple also supports long presses on certain keys, but aside from quotation marks via the comma and period keys, all you get are letter variations with diacriticals, which most of us hardly ever use.) Unfortunately, SwiftKey for iOS 8 lacks this feature. I was really looking forward to it, because its Android version makes text entry dramatically easier, at least for me, than anything on iOS. But without arrow keys and the long presses, I see no reason to prefer its iOS version to Apple's keyboard.
Oh, yeah, I hate trying to position the insertion point properly in iOS - having arrow keys available would make things so much easier sometimes.
Nice to see you here, Henry - it's been years!
The iPhone 6 Plus does indeed have a number of extra keys in landscape mode. Arrow keys (left and right, pnly) are two of those: http://static.businessinsider.com/image/541c748a6da8117b37c4959d/image.jpg
Henry Norr! One of the legends of the Mac world.
(No, I don't have anything useful to say, sorry)
I wonder if any of these keyboards unable languages such as Arabic or Hebrew?
One called Adaptxt does Arabic/Hebrew, there may be others.
As a bilingual Canadian, I appreciate that SwiftKey allows me to type in two languages.
"They cannot... type into secure input fields"
So if I want to type into a secure field I have to go back to the default keyboard???
A nice keyboard offering a new font is Luv Letters. https://itunes.apple.com/us/app/luv-letters/id918869410?mt=8
I don't think it's a new font, it just uses characters from other alphabets which look similar to Latin.
I'm disappointed by the limitations of 3rd party keyboards. This article points to a big one - 3rd party keyboards can't call the list of keyboard shortcuts.
I have become accustomed to swiping up on the globe (one can also hold it down) to bring up the list of keyboards and quickly select the one I want. Once this is ingrained in muscle memory, it's lightning quick. The clunky switching to the next keyboard is pretty unworkable when you have more than two keyboards enabled. Since I write with Emoji and Chinese, it's guaranteed I'll at least have three keyboards. This part needs to get fixed.
I also use dictation a lot, so not allowing for dictation on 3rd party keyboards is a real bummer -- one which is exacerbated by the difficulty of switching back to the keyboard I use most.
Having to type in two languages all the time, SwiftKey is the best option for me.
Even if it creeps me out with the full access, and if it's still a bit buggish and constantly crashing.
I never typed faster (it's prediction is incredible), and also I don't have to switch keyboards that often (it used to happen to me that I realized at the middle of an email that I was writing in spanish with the english keyboard and the autocorrector made a massacre, having to re-type everything).
That time saving makes the bugs and crashes worth the patience.
You're missing out by not enabling SwiftKey to have access to your public writing. That means it can build a predictive model based on you, not generic Americans. When you do enable it, DYAC errors shrink and vanish.
I think it's really silly to ban 3rd party keyboards from entering passwords. Android allows passwords to be typed with 3rd party keyboards just fine, if I'm willing to trust swiftkey with "full access" i'm willing to trust them to type my passwords in. Some people hate the iOS keyboard and want to leave it behind for good.
"The other feature I really appreciate in SwiftKey on Android is the ability to enter numbers and punctuation with just a long press on alpha keys."
Swype has this on iOS, but they did a good job of hiding it. You have to switch to the "dark" theme to see the symbols on the keys. I can't fathom why they didn't put the symbols on the default theme.
All I want is a simple Dvorak keyboard layout in software. I don't want auto-complete-anything or predictive-anything or a new method of swiping around. Yet none of the third-party keyboards offer a Dvorak layout. Dvorak in software has been around on Windows and Mac since the mid-1980s (and on the Apple IIc before that), and I've been typing Dvorak on computer keyboards since 1987. Please, somebody, just give me an iOS 8 Dvorak layout and I'll gladly pay for it.
For Dvorak, see
https://itunes.apple.com/se/app/dvorak-keyboard-layout/id918013491?l=en&mt=8
https://itunes.apple.com/us/app/dvorak/id920692622?ls=1&mt=8
Dvorak, and I think also Colemak has been an option in iOS for a while.
Only with a hardware keyboard, never with the screen keyboard.
Does any one of these 3rd party keyboard support typographical niceties like enabling smart “curly quotes” by default, substituting an em dash for two hyphens, etc.?
You can get en and em dashes (and a bullet, apparnetly) by tap-holding the hyphen. Tap-holding the quote keys gets you various types of smart quotes (including the « and » variety).
P.S. sorry, not curly by default like you asked...you probbaly know about the shortcuts I just mentioned. (If you switch to the # keys to get a dash, it's barely more effort to tap-hold for an em dash.)
Interesting autocorrect idea, though, two dashes into an em dash.
make it easier on yourself, just use an unlikely 2 letter combination for your em dash shortcut, like "qz", "xc" or "jj", substitute something appropriate for whatever language you're typing in. Faster to type two letters than jump between keyboards.
I think that function really belongs to apps rather than keyboards.
I love the keyboard that's in Fantastical. It's just like the apple keyboard but ads a row of numbers and a few symbols at top. Wish I could use that all the time, especially with passwords that have upper, lower, and numbers in them.
Thanks for the review, even if you aren't a Swyper yet.... ;-)
After hearing about PopKey, I decided I liked the idea of adding flair to messaging, note-taking and drawing on iOS, so I created a keyboard that does the same thing with clipart. My keyboard stores all 5000 curated drawings in the keyboard extension itself, though, so there is no need for network access to browse and use the clipart. Just $0.99.
https://itunes.apple.com/us/app/emote-clipboard/id926758243?mt=8