Search code examples
androidandroid-layoutandroid-design-libraryandroiddesignsupport

How to support different languages in older Android devices?


I'm trying to create an app in a different language (in particular Tamil). I've just used Tamil text in the places where I'd use strings and the text renders correctly for newer device simulators (I've tested on API 16 and above). However, when I try running on a simulator with API 10, then I just get rectangles in place of characters. How can I get the text to render correctly on these older devices too?


Solution

  • Did you put it in correct res folder? If your app is supporting multiple language, you must have multiple 'values-xx' in your res folder. For example, if your app supports telugu, you need to create 'values-te' folder with strings.xml inside that folder and put your tamil translation in that file. And you also need to have proper font to render. You can check on your device settings > languages and input > language. See if there any preferred language that you're looking for. If not, you need to provide your own fonts in your app.

    You can refer your issue here, and also Android Documentation on how to properly handle multiple languages.