Keyman is described as 'With keyboards for over 1000 languages, Keyman Desktop lets you type in your language even when Windows doesn't. You can even create your own custom keyboards with Keyman Developer 9.0. The free version offers 2 languages' and is an app in the OS & Utilities category. There are five alternatives to Keyman for Windows, Android, iPhone and iPad. The best alternative is Uosk, which is both free and Open Source. Other great apps like Keyman are Sinhala Keyhelp (Free), Azhagi+ (AzhagiPlus) (Free), Sellinam (Free) and PolyglotKeyboard (Free).
Uosk is a light tool that opens any ASCII, ANSI, UTF-8 and UTF-16 text file and converts words (e.g. separated by spaces) into buttons. Clicking one button the text snippet is pasted into any text editor (Notepad, WordPad, MS Office, OpenOffice...).
Sinhala KeyHelp runs in the background and handles modifiers (pillam) according to the characters as you type to give you a smooth writing experience. Sinhala KeyHelp works on any application such as Word, Photoshop, Illustrator, etc.
PolyglotKeyboard is an application for polyglots, for people, who need to type different languages (nearly) simultaneously. It allows using simple keyboard shortcuts for writing desired special characters found in different alphabets.