Thursday, May 26, 2011

[Android] Adding Arabic Layout for Bluetooth HID Keyboards

If you are lucky enough to have a bluetooth HID keyboard, like Apple Wireless Keyboard, then it would be ultimate fun to use it on your Android phone for convenient editing. Luckily as well, there are couple of Market apps that let you do this. The first is BlueInput and the other is BlueKeyboard JP. There are many tutorials explaining how you use these apps, here is one of them:


As you can see, only English, Dutch and Japanese layouts are supported. For the other app, only English is supported. As an Arabic speaker, I wished that I could use my keyboard to write in Arabic. I tried to contact the developer of BlueKeyboard JP but he never answered. He even didn't have much time to publish my comment on his website. I contacted Teksoft, the developers of BlueInput, but all what they have said is that they are gonna add more layouts soon.

After some readings in the Android OS architecture, I have developed a ROM update that will add the Arabic layout to ANY HID app you are using! Obviously, your device should be rooted.
A good guide for rooting Nexus S can be found here.

As of the moment, the update is available only for Nexus S running either Cyanogenmod7 or MoDaCo. Although, cooking an update for any device is darn easy, but I don't have much time to do this for all and every device on the market. If you are interested, please leave a comment below mentioning your device model and firmware, and I will cook the update for you.

Download (144 KB):
How to install:

Because you have a rooted device, you should be already having Clockworkmod recovery installed as your recovery manager (or a similar). Flash my update the same as you flash any update.
  1. Download the appropriate file from above and save it on your device sdcard.
  2. Reboot the device in the recovery mode (for Nexus S, hold the Power & Vol-up while switching on, and then select Recovery)
  3. Choose 'install zip for sdcard'
  4. Choose 'choose zip for sdcard'
  5. Select the update file you have saved in step 1
  6. Confirm install by selecting 'Yes - install blah blah...'
  7. Wait a couple of seconds and make sure no errors are displayed
  8. Now choose 'Go Back' and reboot your device normally
How to use:

  1. Assuming you have successfully connected your keyboard and can type in English, wherever you want to write in Arabic, just press the Alt key two times, that simple!
  2. To type again in English, just press the Alt key two times, again!
  3. When writing in Arabic, you can use the shift key to write alef hamza, Arabic comma, semicolon, diacritics (tashkeel) and everything you are used to write on your computer.
  4. You will also notice that digits are written in Hindi, so yes it is real Arabic keyboard :)
Note: in BlueKeyboard JP, there is a bug that will not let you switch to Arabic when the bottom ads are shown, to workaround this, just press 'Esc' on your keyboard for the ads to go away and then you can switch back and forth to/from Arabic.

Important: Don't use this update for devices having physical keyboards. Obviously this will modify their layout.

That's it for now, waiting to hear from you.

9 comments:

hammady said...

I want to point out that you can benefit from the Arabic layout even without having to build an update for your device. Just download any of the zip files above, extract, find a file called "qwerty.kcm.bin". If you have the Android SDK installed, go to where you have extracted the file and type these 2 lines:
adb remount
adb push qwerty.kcm.bin /system/usr/keychars/qwerty.kcm.bin
Make sure you are connecting your device via USB and that you have enabled USB debugging mode.

Techa said...

This is a great addon :)

I could not write the Arabic letter "Thal ذ" by the way! Where is it?

Thank you!

hammady said...

Sorry for the late reply!
It is on the left of the 1 on Apple keyboard, varies on other keyboards. However, it is in the same place if you used your keyboard on a PC/Mac.

Ahmed Badawy said...

Great effort

But would you please make one for Sony tablet s?

hammady said...

Sorry for the late reply, do u still need that?

Dela Puspitasari said...

Salaam brother, please make one for Galaxy tab plus and motorola xoom (for my husband) ? Shukran

أبو المعتصم بالله said...

Hi
Thanck for your great job
Could pleas make this update for the samsung galaxy note 10.1 2014 E

أبو المعتصم بالله said...

thanck you

أبو المعتصم بالله said...

Hi
Thanck for your great job
Could pleas make this update for the samsung galaxy note 10.1 2014 E