African languages keyboard


Do you want to support development of this free application?
What is the African Keyboard
The African Keyboard app is an Android keyboard implementing special characters of African languages that use Latin-based alphabets. Its goal is to give users means of writing their native languages and as such to promote the preservation and growth of those languages and their cultures.
The keyboard offers familiar QWERTY and AZERTY layouts and thus is usable for casual writing of English, French and so on. On top of this it offers sets of special characters used in various African languages. Those characters are grouped under keys according to graphical or phonetic resemblance and are accessible after long press on the key. Many African languages use various accents to express tones, nasalization and so on. The uppermost line of the keyboard gives access to such accents, that can be combined virtually with any letter.


Although you can use the default "Full African Keyboard Character Set", which gives access to all special characters, you can also go to the Options and chose a particular character set that implements characters of languages from your area. The available options are:
Standardized alphabets:
- African Reference Alphabet (included in the "Full Character Set")
- Benin National Languages Alphabet
- Berber Latin Alphabet
- General Alphabet of Cameroon Languages
- Guinean National Alphabet
- Pan-Nigerian Alphabet
- Tamasheq Latin Alphabet
- Yoruba Alphabet (Yoruba Orthography Committee)
Informal sets of characters by country: Algeria, Angola, Botswana, Burkina Faso, Central African Republic, Democratic Republic of Congo, Eritrea, Ethiopia, Gabon, Gambia, Ghana, Guinea-Bissau, Chad, Ivory Coast, Kenya, Liberia, Libya, Malawi, Mali, Mauritania, Mayotte, Mozambique, Namibia, Niger, Republic of Congo, Senegal, Sierra Leone, South Africa, South Sudan, Sudan, Tanzania, Togo, Uganda, Zambia, Zimbabwe
Story Behind
In summer 2016 I have been volunteering as an IT in a local school in Yaoundé, Cameroon. One day my friend Boskary, a member of my host family, came and asked me how can he type his native language, the Ngiemboon, on his Android phone. The language contains certain exotic characters such as "ʉ", "ɔ" or "ŋ", that are not found on any usual keyboard. As a person that loves languages it always frustrates me to see that technology actually hinders development of minority languages instead of promoting them and helping them to grow. I had to tell Boskary that there is no easy way, but promised him to have a look on the problem. After some days of research and coding I came up with the African Keyboard, implementing not only the Ngiemboon language characters, but (hopefully) all special characters found in Latin-based alphabets of African languages.
How to Install
Download the African Keyboard from Google Play Store.
Follow the standard installation procedure. The keyboard does not require any particular permissions.
Activate the keyboard by going to Settings -> Language & Input -> Current Keyboard -> Choose Keyboards and click on the switch next to the African Keyboard label. Android will warn you that custom keyboards may be dangerous. Don't worry. This keyboard does not collect data of any kind.
Go back to Language & Input -> Current Keyboard and choose the African Keyboard as your default keyboard.
Go to any app and start writing ...


How to Use
The keyboard comes in QWERTY and AZERTY flavors to accommodate both English and French speaking users. Special letters proper to local languages are accessible on long press on certain keys.
The first line of keyboard contains a choice of accents. Those are modifying characters, i.e. you need to write first the letter you want, then press the accent you want to give it. Some keys contain two accents. On single or double click on the key the first or the second one will be used.
Single press on the Shift key will allow for writing a single uppercase letter. Double-pressing the Shift will lock it for writing uppercase text. Pressing it again switches to lowercase.
Pressing the "globe" icon will switch to the next input method (likely another keyboard that you have installed).
Single-press of the ". ," key writes a full stop, double-press writes a comma. Long press brings forward symbols keyboard.
Long press on the Space key brings forward the Settings screen for the keyboard.
The Smiley key adds a text smiley. Long press opens a basic set of text emoticons.
Known Issues
Older versions of Android, i.e. Jelly Bean and KitKat lack support for certain exotic characters (shows an empty space instead) and renders certain combinations of letters and accents in a "not-so-nice" way. To my knowledge there is no workaround for this. Since version 5 (Lollipop) Android renders all the characters and accents correctly. Using Android Lollipop and newer is strongly recommended.
Feedback
Do you have any comment or request to implement a particular missing character or a set of characters? Your feedback is welcome on dominik.ramik@seznam.cz or message me through my Facebook page.
Version History
0.18
- Added icon in app tray giving access to instructions about activation of the keyboard and user help.
0.17
- Updated Chad character set (now called National Alphabet of Chad) and included support for Fur language in the Sudan character set. Thanks to Kobi for suggestions.
0.16
- Updated Ivory Coast keyboard to support Abé language. Thanks Boyd for suggestion.
0.15
- Fixed problems with the Enter key in searches.
0.14
- Improved display on Android versions 4.x, Improved UI of pop-up mini-keyboards
0.13
- Major revision of languages and addition of several tens of alphabets
- Tweaks of user interface for better usability
0.12
- Improved display of certain characters and minor adjustments in Ivory Coast keyboard
0.11
- Added haptic response
0.10
- Public release
- Minor adjustments of some character sets
0.9
- Added basic set of 13 charsets for different language groups
- Workaround for correct displaying of certain accents on the first line of the keyboard in 4.x versions of Android
0.1 - 0.8
- Basic keyboard functionality and testing with a restricted community of users