The iOS keyboard, on Android. And nothing you type ever leaves the phone.
Opensolr Keys is a free, open source keyboard for Android with the look and feel of the iOS keyboard: white keys, a number row, the round return key, a preview balloon over every key, long-press accents and symbols. It corrects your English and Romanian offline, from word tables bundled in the app, and learns the words you keep.
It has no internet permission. Not switched off, not opted out: the app does not have it, and Android will not let it open a connection. No accounts, no sign-in, no analytics. A keyboard, and nothing else.
Free and open source under the MIT license. Android 8.0 or newer: that is all it needs. No Opensolr account, no account of any kind. The signed APK is on GitHub.
On a real phone.
The keyboard over the app’s own settings screen: the suggestion bar, the emoji, the long press, the keys.
Six things a keyboard should do. Nothing it should not.
Opensolr Keys was written for one kind of person: the one who came from an iPhone, wants the keyboard to look and behave the way it did there, writes in Romanian with the diacritics in place, and does not want a keyboard that phones home.
1 · The iOS keyboard, exactly
White bordered keys on grey, the iOS layout with a number row on top, the round return key, the balloon that pops over the key you press and lingers a moment after you lift your finger. Shift, delete, 123 and ABC where your thumb expects them.
2 · It cannot go online
The app has no internet permission. What you type, the words you keep, your settings: none of it can leave the phone, because the app has no way to send it. No account, no sign-in, no analytics, no crash reports. One permission, vibration, for the optional tap.
3 · Autocorrect that reads the sentence
English and Romanian, from word and word-pair tables bundled in the app. It only touches words that are not in the dictionary, and it looks at the words before and after: their or there, its or it’s. Backspace undoes it; the × keeps your word and remembers it.
4 · Romanian with its diacritics
Type ca si and get ca și: the diacritics are restored from context, and a word that could go either way, ca or că, is looked at again once the next word is known. Hold any letter and ă â î ș ț come first in the row of accents.
5 · Emoji without leaving the keys
A panel with every emoji in groups and a search box, and while you type, the emoji that fit the word line up in the bar: sad, lol, cat. A colon and a word, :facepalm, searches by name right from the keys.
6 · The tick of a Pixel
The discrete tap sound of a Pixel phone, bundled so it is the same on any phone, with a volume of its own. Vibration with its own strength, off until you want it. Key size, bottom offset and long-press delay, each a slider, each felt at once in the Try it box.
Your taps go in. Your words come out. Nothing goes anywhere else.
A keyboard sees everything you type, which is why this one is built so that it cannot tell anyone. The dictionaries are inside the app; the words you keep stay in the app’s own storage; the only thing that ever leaves the keyboard is the text, into the field you are typing in.
- Install the APKFrom the latest GitHub release. Android asks once whether your browser may install apps.
- Enable it and choose itThe two buttons at the top of the app open the two places in Android: the list of allowed keyboards, where you switch Opensolr Keys on, and the keyboard switcher, where you pick it. Once.
- TypeAutocorrect, long press, emoji and the tap sound are on from the start. Everything else is a slider in the app, with a Try it box to feel the change at once.
A keyboard, in detail.
Every behaviour below is in the app today, and in the documentation, one page per topic.
The number row, always there
1 to 0 above the letters, on the letters keyboard, so a number never needs a switch. 123 opens the numbers and punctuation keyboard, #+= the symbols one, ABC comes back. The keys.
Long press on every key
Hold a letter and a row opens: the symbol printed in its corner first, then its accents, the Romanian ones first. Hold the period key for the usual punctuation, a digit for fractions and superscripts, the dollar for other currencies. The delay is yours to set, 50 to 550 ms. Long press.
Autocorrect, offline, in context
Only words not in the dictionary are corrected, on space or punctuation, from the word that fits what comes before and after. Romanian diacritics are restored the same way, and an ambiguous word is revised once the next one is known. English and Romanian, each with its own switch. Autocorrect.
The words you keep
Backspace right after a correction gives your word back. The × on the suggestion keeps it and remembers it, and from then on it is never corrected. The list is plain text in the app, one word per line, yours to edit. Words kept as typed.
Emoji, three ways
The panel, in groups with a search box. The bar above the keys, which shows the emoji that match the word you are typing. And a colon before a word, which searches by name without opening the panel. Emoji.
Its own hide key
A chevron under the keys puts the keyboard away, like the key on an iPad. The small system bar with the keyboard switcher that Android draws under other keyboards is hidden, so the keyboard ends where its keys end.
Edge keys that answer on gesture phones
On a phone with gesture navigation the outer half of q, p, 1, 0 and delete usually belongs to the back gesture. Opensolr Keys asks Android to keep its edge gestures off the keys, so a tap at the very edge types the letter. Room for the gesture bar is kept underneath, and Bottom offset adds to it.
Sound and vibration, each its own
The Pixel tick, bundled, with a volume slider apart from the phone’s, on from the start. Vibration off from the start, with a strength slider when you turn it on. Sound and vibration.
Size and position, live
Key size sets the height of the keys and of the whole keyboard; Bottom offset lifts it off the bottom edge. Both move the keyboard under your finger as you slide. Settings.
Settings that survive a reinstall
Every setting and the list of words you keep are part of your phone’s app backup, so they come back after a reinstall on the same Google account and follow you to a new phone.
Updates from where you got it
The keyboard never goes online, so it does not look for updates itself. Check for updates in the app opens the latest GitHub release in your browser; a copy installed from Google Play is updated by Google Play. Updates.
Not a policy. A permission it does not have.
Where what you type goes
Into the field you are typing in. Nowhere else.
- No internet permission. The app cannot open a connection. Android enforces it; you can check it in the app’s permissions.
- The dictionaries are inside the app. No word is sent anywhere to be checked, and nothing is downloaded.
- The words you keep and your settings stay in the app’s own storage, and in your phone’s app backup if you have one.
- No accounts, no sign-in, no analytics, no crash reporting, no ads.
What it asks for
One thing.
- Vibration, for the optional tap feedback. Off by default.
- Nothing else. Not contacts, not storage, not the microphone, not the network.
- Readable in the source. The whole keyboard is on GitHub under the MIT license, dictionaries and all.
Every line is on GitHub.
Opensolr Keys is MIT licensed. Read how the autocorrect decides, build the APK yourself, or fork it and make it yours.
Source code
Kotlin, with no dependencies beyond Android itself. github.com/phpcip/opensolr-keys
Documentation
Installing, enabling, the keys, long press, autocorrect, the words you keep, emoji, settings, updates, privacy. Read the documentation
Releases
Every version with its signed APK and release notes. All releases
Three steps, about a minute.
- Download the APK on your phoneopensolr-keys.apk, the latest signed release from GitHub. Android 8.0 or newer.
- Allow the installAndroid asks once whether your browser may install apps. Allow it for this install.
- Enable it and choose itOpen Opensolr Keys and tap Enable keyboard, switch it on in the list Android shows, then tap Choose keyboard and pick it. By hand: Settings → System → Languages & input → On-screen keyboard → Manage keyboards. Step by step.
The iOS keyboard, on Android. Offline.
Free, open source, no account, no internet permission. Autocorrect for English and Romanian from word tables inside the app, long-press accents on every key, emoji with search, and the tick of a Pixel.