External Keyboard Helper Pro

3.53K reviews
Content rating
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image
Screenshot image

About this app

INSTEAD CONTACT ME ON: keylayouts@apedroid.com

A non visible soft keyboard (Input Method) intended to be used with hardware Bluetooth and USB keyboards. It automatically brings up the Input Method dialog when Bluetooth keyboard connects or disconnects (on some devices this can also be made to work with USB keyboards). It supports a lot of different keylayouts also provides a lot of configuration options.

This app does NOT require a rooted device and there is a DEMO version available if you want to try it out before buying.


* International keyboard layouts.
* Up to 16 application shortcuts can be added (for example start Google Maps with Alt+M etc.)
* Up to 16 text strings can be add (for example insert your email address with Alt+E etc.)
* Remaps the Escape key to BACK (can be turned off)
* Allows you to control which characters should be treated as combining characters.
* A "null" Soft Keyboard to use with hardware keyboards (Bluetooth & USB).
* Automatically brings up Input Method selection dialog when Bluetooth keyboard connects or disconnects (Android 2.3+).
* Automatic detection can also work with USB keyboards on some platforms (experimental) (Android 2.3+)
* App that brings up Input Method selection (for easy access)
* Switch between up to three layouts of your choice using a key or key combination.
* Can choose keymap automatically based on language setting in your device.
* Blocks long-press-popups on Android 2.x.
* Change the key repeat delay and rate.
* Layouts can be modified and two user defined custom layouts can be configured.
* ConnectBot aware (TAB and CTRL codes)

Currently supported keyboard layouts
* Arabic (101, 102 & 102 AZERTY)
* Armenian (Eastern, Western & Phonetic)
* Austrian
* Belgian
* Bosnian & Herzegovian
* Bulgarian (Phonetic, Phonetic traditional & Typewriter)
* Canadian (French & Multilingual)
* Croatian
* Czech (qwertz, qwerty & programmers)
* Danish
* English (Colemak, Dvorak, Dvorak Left hand, Dvorak Right hand, Dvorak Programmer, GB & US-International)
* Estonian
* Faroese
* Finnish (Finland & DAS)
* French (Bépo, France & Switzerland)
* German (Germany & Switzerland)
* Greek (Standard & Polytonic)
* Greenlandic
* Hebrew
* Hindi Traditional
* Hungarian
* Icelandic
* Italian
* Korean/Hangul
* Latvian
* Lithuanian (Numeric)
* Macedonian FYROM Standard
* Maldivian
* Norwegian
* Persian
* Polish (214 & Programmers)
* Portuguese (Brazil, Portugal & Br-Nativo)
* Romanian
* Russian (Normal, Typewriter & Phonetic)
* Serbian (Latin & Cyrillic)
* Slovak (qwerty & qwertz)
* Slovene
* Spanish (Latin America, Spain/Int & Dvorak)
* Swedish (Normal & Svorak A1|A5)
* Thai (Kedmanee & Pattachote)
* Turkish (F & Q)
* Urdu (Normal & Phonetic)
* Ukrainian
* Vietnamese

All layouts are based on standard USB Keyboard layouts. Bluetooth keyboards sometimes do not follow the standard completely but it is possible to manually customize mappings.

What it does NOT
* It won't fix your BT or USB connected keyboard if it wasn't working in the first place.
* It does not automatically switch Input Method. It only shows the dialog and you will have to choose Input Method manually. This is an intentional limitation built into Android by Google. No user installed app is allowed to change IME without user interaction.

Want to help translating this app to you language?
Go here: http://www.getlocalization.com/ExternalKeyboardHelperPro/
Updated on
Apr 26, 2023

Data safety

Safety starts with understanding how developers collect and share your data. Data privacy and security practices may vary based on your use, region, and age. The developer provided this information and may update it over time.
No data shared with third parties
Learn more about how developers declare sharing
No data collected
Learn more about how developers declare collection

Ratings and reviews

2.15K reviews
Drew Losure-McDermott
January 10, 2023
If you're having ANY issue with your external keyboard working with your phone, THIS APP is your answer. I've been using it for YEARS - solves the multipress issue and other issues unique to external boards. Has ACTUALLY gotten updates and support consistently during the 10+yrs I've used the app, with no end in sight. PERFECT app from indie dev. NO ADS. Seems free now, was worth 5$; if I'm wrong, pay! Worth it. Easy switch between external and virtual input. Wish I'd more words to detail it!‽¡‽™
8 people found this review helpful
Did you find this helpful?
George Edge
May 16, 2023
I was using my USB keyboard previously without a problem with Android 12 on Samsung S10+. Then my USB keyboard stopped working and so I tried this APP. I can't get this to work but it comes up so I can choose the external keyboard OK and I rebooted and all that, set permissions near as I can tell, but just doesn't function with my external keyboard. Why are there no detailed instructions??
Did you find this helpful?
Mazhar K
September 24, 2020
This is such a useful app and works very well. It can be difficult to get it working in some cases, as I experienced myself, till I found the one setting that turned everything perfect. It was the Advanced Setting "Use Old Style Detection". Once I ticked that on, the external wired keyboard worked very well, all the unstable behaviour was gone. It does take some trial and error as we are not all experts on this, so a good guide /documentation can be very helpful. Thanks to the developer for creating this very useful utility to work with external keyboards.
41 people found this review helpful
Did you find this helpful?

What's new

- Fixed Bluetooth- and USB-detection.
- Now uses notification are to start IME-selector on detection (due to changes in new Android versions).
- Will ask for Bluetooth and Notification permissions on later Android-versions (due to changes in new Android versions).