Download presentation
Presentation is loading. Please wait.
Published byAnnabelle Riley Modified over 9 years ago
1
INTERNATIONALIZATION & LOCALIZATION HUY T. VU
2
DEFINITION Internationalization: deploying a computer software internationally Localization: adapting an internationalized software for a specific region by translating into different languages and modifying contents to target the local market ***Problem in software industry: popular apps should be used internationally, but not everyone speaks the same language.
3
EXAMPLE: THE FIFA WORLD CUP 2014 32 national teams participate in one of the world largest sport events Millions of fans WILL gather in Brazil & billions watching at home Demand for mobile apps: Info, results, venues, analyses… Travels, hotels, restaurant…. Photos, clips…. *** very diverse languages and cultures
4
HOW TO LOCALIZE RESOURCES? When localizing, there are 2 types of resource Changing resources: String, Drawable, Animation, Audio…. Unchanging resources: Layout Solution: create sub-folders with codes (normally follow ISO 639-1 standard)
5
SAMPLE: INTERNATIONAL APP Create an empty app and define strings.xml as in the picture
6
Make a Japanese version Step: 1.create a sub-folder “values-ja” under folder “res” 2.within that folder, create strings.xml file and prepare texts for 4 different string variables *** ja is ISO 639-1 code for Japanese, list of language codes can be found here: http://en.wikipedia.org/wiki/List_of_ISO_639- 1_codes
7
Use custom locale on emulator
8
TYPICAL ISSUE #1 NOT all languages are supported on every devices (especially lesser popular languages such as those used by African nations) Need another approach
9
CHANGE LOCALE DYNAMICALLY STEP 1: for simplicity, create a RadioGroup of languages (this works better with Spinner in Android, but for simplicity, I use RadioGroup)
10
STEP 2: modify the AndroidManifest.xml file by adding android:configChanges=“locale” to every activity that intends to change locale dynamically
11
STEP 3: add codes in the activity to change locale and update configuration
12
TYPICAL ISSUE #2 Both England and the USA are qualified for the World Cup. Both countries use English, but… England Football WC Plaza Fuel … USA Soccer Restroom Mall Gas …
13
Localization: Make another subfolder specifying Great Britain Assuming the default values are for US-localization Only include the strings that are different res/values/strings.xml res/values-en-rGB/strings.xml
14
Folder name convention: values-xx-rYY xx is ISO 639-1 language code (2 letters) r is region (must have) YY is ISO 3166-1 country code (2 letters) Use Locale constructor to interpret the code
15
People would like to see information about their national team localize “drawable” resource TYPICAL ISSUE #3 For images, it’s a little different, the previous resource must be nullified before setting new resource
16
TYPICAL ISSUE #4 Date and Time format varies between countries To localize date and time format, add the following codes
17
DESIGN STANDARDS FOR INTERNATIONALIZATION Names are NOT translatable or localizable Internationalized conventions are used by default (SI units, symbols,…)
18
WHAT ABOUT THIS? Design’s rule of thumb: ROMANIZATION Texts should be displayed in Romanized form
19
THANK YOU
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.