How to get perfect Sinhala text on Android 4.4 KitKat! (and 4.2 + 4.3) + Instructions for 5.0 Lollipop Issues

Screenshot_2014-04-09-12-26-32
Screenshot on HTC One Google Play Edition

Using Sinhala on the phone used to be very important to me. After switching to Windows Phone (7.x – those things were unhackable) I decided to let it go. But since I moved back to Android felt like it was time to get it done! (The delay was obviously because I couldn’t be bothered with rooting. But as with everything, I eventually got bored and had to seek out methods of entertainment. In this case with custom ROMs and other fun things.)

You may have seen good Sinhala support on Samsung devices. This is because they include Sinhala fonts when they customize their ROMs by default.

We have tried using Sinhala font files on older versions of Android – in my case a shitty Samsung. Although it worked, it was not perfect. There were loads of rendering issues. (You can check an old guide by Kalinga here)

I tried doing the same thing on my current phone but it didn’t work (because of a permission issue I think). After running around XDA Forums for a day, I managed to find another more modern method to do it.

Sinhala Text on Official Twitter App
Sinhala Text on Official Twitter App

Since I had doubts about the previous font we used (one customized for iOS back in the day by Nick) I went looking around on Siyabas and found Bhashitha for Linux. I followed a guide on XDA Forums written for Punjabi support. After messing about for a while and a final reboot, perfect Sinhala text!

So let’s begin.

Requirements: Android 4.2 / Android 4.3 Jelly Bean or 4.4 KitKat, Root Access, Sinhala Font of your choice

Disclaimer: I won’t be responsible if you kill/brick your device, make it explode, turn it into a transformer etc. Proceed at your own risk!

Steps:

  1. Root your device if you haven’t already
  2. Download font from Siyabas. I used Bhashitha for Linux. Potha also works. [4.2.2 only supported Potha in Shenal’s testing] Try other fonts and let us know if they work. [Chathura tried our custom MalithiWeb font but it showed rendering issues on other Apps like Twitter.] Link: Sinhala Fonts
  3. Copy the font files to /system/fonts (I copied the files to the SD card and used ADB Shell to mount and copy them to the relevant directory. You can use something like Root Browser too) – You can use any file you like. I decided to go with LBhashitaComplexSans
  4. Download the fallback_fonts.xml file from /etc
  5. Open the fallback_fonts.xml file and modify it by adding your font names before DroidSansFallback entry.Screen Shot 2014-04-09 at 1.13.37 PM
  6. Copy the file back to the /etc directory.
  7. Now an important part which took some time for me to figure out. PERMISSIONS! Change the permissions of your fallback_fonts.xml file AND the font files to 644 or -rw-r–r– (You can do this with the terminal with chmod or using a root browser application.)
    Screen Shot 2014-04-09 at 1.18.30 PM
  8. Reboot and rejoice! (Maybe yell like a madman like I did.)

Typing:

Bhasha Helakuru or Multilingual Keyboard with the Sinhala plugin for typing. Since I’m a Wijesekara guy I went with the latter.

Swiftkey also supports Sinhala now. It’s my primary keyboard now since it supports easier switching between languages + autocorrect and suggestions.

Swiftkey: https://play.google.com/store/apps/details?id=com.touchtype.swiftkey&hl=en

Bhasha Helakuru: https://play.google.com/store/apps/details?id=lk.bhasha.helakuru

Multilingual Keyboard: https://play.google.com/store/apps/details?id=kl.ime.oh
Plugin: https://play.google.com/store/apps/details?id=klye.plugin.si

5.0 Lollipop:

If you’re having Sinhala trouble with Lollipop (I had a few issues with 5.0 ROMs for HTC One) follow this guide written by Chamika Weerasinghe: Enable Sinhala fonts rendering in Nexus 7 Android 5.0 Lollipop

Thanks

Thanks @chathuraw for testing on 4.3

Thanks @ShenalSilva for testing on 4.2.2

Everyone who has tried and reported back! 🙂

95 thoughts on “How to get perfect Sinhala text on Android 4.4 KitKat! (and 4.2 + 4.3) + Instructions for 5.0 Lollipop Issues

  1. I see you don’t use the power of social websites like facebook on your site.
    You can get huge traffic from social sites on autopilot
    using one useful app, for more info search in google for:
    Alufi’s Social Automation

  2. Any Idea about how to install sinhala on Xiaomi devices??tried the above steps but did not work..Hope you will help me…thank you

    1. Sorry guys.it works perfectly.what i did earlier was,i simply did not restart my phone.shame on me and thank you guys!

  3. Thanks for the info. I copies Noto Sinhala fonts to my rooted HTC one with Lollipop (Stock Rom) as mention on JIT guide, it works as soon as i copied the files but when i reboot the phone (simply switch of and on) changes disappear from /system/fonts folder. By changes i meant the copied files.
    Please let me know if you have any suggestion. I’m just a newbie on the android stuff.

  4. Hey guys, use Font Installer app and u can do it very easy,.. Install app, choose your font, install, reboot… Thats all… I am using bashitha sans.. Its perfect.. (root required)

Leave a Reply