Android studio and localizing apps - android

I'm currently working on an app, which will be used (hopefully) by various tourist to my city. as such, i would like to complement as many languages as i can, and i have the appropriate translators to do so. I've read and started to implement the various different resources in the res folder, i already have some translated, i have a folder for each language as described in the guide from google.
How do I make the app initiate as non-English language in my phone while testing? for example Spanish. every time i run it, it's always English, and i would like to see that the app also works in the other languages, but i can't find anywhere how to initiate it.
I realize I might be simply overlooking something basic.
Thanks.

The language of the app is based on the system language. You need to change the language in Settings -> Language & input.

Change phone language from Settings->Language & input

If you use a physico-chimiques devices you have to change the languages of your device
If you use a emulator I think you can set the language on the creation.
If your tester have a android with spanish language, the app will be automatically on spanish. (if you create a filé string.xml in a values-es folder)

Related

How to declare the fallback language on Android for TalkBack?

I have an Android app that currently only has a fallback language, so all strings are in res/values/strings.xml and are in English. This works fine with TalkBack while the OS is also set to English. However, as soon as I change the OS language to anything other than English, TalkBack starts to speak those English words using the pronunciation of the OS language, which is weird and hard to understand.
How can I declare to the Android OS what the language of my fallback resources is so that TalkBack can choose the correct pronunciation to use?
Unfortunately, as far as I know Talkback doesn't support auto language switching. Google TTS seems to do some auto switching based on non-latin characters these days, but for latin languages it just doesn't do anything except keep the phone language. So, I'm afraid there's nothing you can do to facilitate this.
Create a strings.xml variation for english and leave it like this
<resources ...>
</resources>
According to the official doc:
https://developer.android.com/training/basics/supporting-devices/languages
https://developer.android.com/guide/topics/resources/providing-resources#AlternativeResources
You can create different values-xx folder to support different languages!
Hope this can help you!

Android: Change Languages (string.xml) programmatically

In our Android app, we have an option for the user to change the language, which means he can select whether he want to use English or Sinhala. The default is always in English. We have one string.xml for English and another for Sinhala.
I was referring Android documents about "localization" but that is not exactly what I am looking for, I can't ask the user to change his phone settings. I also noticed programmatic localization which is discussed in here but most users do not recommend it due to loads of errors (anyway these posts are pretty old)
So, what's the best way of changing the String?XML file, with the preferred language of a user? It seems not easy on Android.
Or, is this is simply not a good idea?

Delphi Arabic character display issue on android

i am using arabic characters for the first time in my app
this is how they should look like :
But this is how they end up :
things i tried:
changed the phone language to arabic.
i chose this font :Arabic type settings. i found in the fonts list
things works well for windows, its only in Android i get the problem.
i believe i am missing something because i never used arabic in apps before.
i appreciate your help.
Fire Monkey does not support right-to-left languages like Arabic. Unfortunately your chosen framework is not capable of meeting your needs. You will need to find a different tool to write your app.

Adding new locale to Android OS

I need to add a new locale to Android OS. I, with my team, will
translate all the apps provided by Android OS (e.g. Calculator) to
that language. It is based on Arabic script and is RTL. I have
reviewed how other apps are translated into Arabic on
android.googlesource.com
Android OS has already been translated into many languages. I saw that in source code where for each app a new strings.xml file is created for a new language,
for example
https://android.googlesource.com/platform/packages/apps/Calculator/+/master/res/values-ur-rPK/
I have few questions:
How would I make sure that this new language appears in Settings ->
Language & Input -> Language?
Is it up to manufacturer to show or hide any language?
English is shortly written as en, Farsi is shortly written as fa.
Similarly, the language I want to add is Sindhi and is shortly written
as sd. Will Android know if I make folder like values-sd in res
folder?
Sindhi is language spoken in India and Pakistan. Urdu is also one
language spoken in both countries. However, the folder for Urdu was
named as vaues-ur-rPK. I know PK means Pakistan, but I don't know what
"r" stands for in rPK. Is there a naming conventions? Is it for right
to left languages? Folder for Farsi was not named this way?
If there is something else I should know about, kindly let me know. I
have read a lot on https://source.android.com and have answers to some
basic questions. I am confused about the above questions.
Note: I had asked my question on android google groups for developers. One group rejected my post from appearing in the group and in other group no one was interested in my questions. Therefore, I am asking here.

Regarding Multiple Language Application for Android?

I am trying to make small app for android. My idea for app is that user can change the language whichever they want ...etc french , german,chinese , english etc...
how to force the locale language in my app or how to get access to the language used by user on their device and with respect to that I can change my application language.
THank you,
For this you may need to make use of Localization.
Please go through the following example available at the developer site.
May be this can solve your issue.
http://developer.android.com/resources/tutorials/localization/index.html

Categories

Resources