SlideShare a Scribd company logo
1 of 45
Affordable and efficient multi platform
localization. Case study
Contens
Internaziolization vs Localization
Android vs Ios
How prepare it
Our experience
Inernazilization VS Localization
Internazilization
Internationalization is the process of making your app able to
adapt to different languages, regions, and cultures.
Localization
Localization is the process of translating your app into
multiple languages.
Android vs IOS
Xibs & Storyboards
Localizible.strings
Strings.xml
The winner is ... ?
HOW PREPARE IT
Gold rule of Localization
USE FORMATTER INSTEAD OF
CONCATENATION
Usge of formatter
Hello, userName! You are (n) visitor.
Usage of formatter
Hello, userName! You are (n) visitor.
Usage of formatter
Hello, userName! You are (n) visitor.
Usage of formatter
Hello, userName! You are (n) visitor.
Remeber
(Android)%n$s != (Ios)%n$@
Quantity
Quantity in Android
Quantity in Android
Quantity in Ios
Quantity in Ios
Ukrainian example
Localization of other resources
LaMetricTime date Localization Example
LaMetricTime metrics Localization Example
LaMetricTime Localization of Backend responses
Other things to remeber
1. Localize images
2. Set correct layout
Common mistakes
Usage of string concatenation
Setting text directly
Magic methods insted of localizing plurals
Our experience
What we need to localize ?
1. Android app
2. Ios app
3. Cloud
4. Firmware
Chose translation service
OneSky UI
OneSky app
1. Fast translation
2. Translation is made by native speakers
3. Comfortable UI
4. Cheap price
5. Awesome quality
How making it 2x cheaper ?
More than 95% of text and all resources in both applications
was the same.
So why we need to pay 2x price for each Localization ?
Solution
ANDROID KEYS == IOS KEYS
How we make it
IOS Localization contain only one file.
All Storyboard & Xib texts are set from code
All IOS keys changed to android keys
Results
95% of text resources was localized
We need to localize only 2 files all the time
Localization is 2x cheaper
How make Localization fast
Take care about Localization from project beginig
Use same keys for android & ios app
Choose correct Localization Service
Thank you :)

More Related Content

Similar to Mobile Cafe #6

Steven Ramage: THE LANGUAGE OF BUSINESS
Steven Ramage: THE LANGUAGE OF BUSINESSSteven Ramage: THE LANGUAGE OF BUSINESS
Steven Ramage: THE LANGUAGE OF BUSINESS
AGI Geocommunity
 
Development of DSL for Context-Aware Mobile Applications
Development of DSL for Context-Aware Mobile ApplicationsDevelopment of DSL for Context-Aware Mobile Applications
Development of DSL for Context-Aware Mobile Applications
Obeo
 

Similar to Mobile Cafe #6 (20)

From Mobile to MongoDB: Store your app's data using Realm
From Mobile to MongoDB: Store your app's data using RealmFrom Mobile to MongoDB: Store your app's data using Realm
From Mobile to MongoDB: Store your app's data using Realm
 
Cross Platform Development with Xamarin
Cross Platform Development with XamarinCross Platform Development with Xamarin
Cross Platform Development with Xamarin
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google Devs
 
Steven Ramage: THE LANGUAGE OF BUSINESS
Steven Ramage: THE LANGUAGE OF BUSINESSSteven Ramage: THE LANGUAGE OF BUSINESS
Steven Ramage: THE LANGUAGE OF BUSINESS
 
How to create software that is ready for the world
How to create software that is ready for the worldHow to create software that is ready for the world
How to create software that is ready for the world
 
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
Nashville DevFest '17 - When To Go Native (Jonathan Wiley, LunarLincoln)
 
Мобильная разработка. Между Сциллой и Харибдой. Native, hybrid or cross platf...
Мобильная разработка. Между Сциллой и Харибдой. Native, hybrid or cross platf...Мобильная разработка. Между Сциллой и Харибдой. Native, hybrid or cross platf...
Мобильная разработка. Между Сциллой и Харибдой. Native, hybrid or cross platf...
 
Otto AI
Otto AIOtto AI
Otto AI
 
Agi 09 Soapbox Slides 1 Spatial
Agi 09 Soapbox Slides 1 SpatialAgi 09 Soapbox Slides 1 Spatial
Agi 09 Soapbox Slides 1 Spatial
 
Which Language Is Best For iOS App Development.pdf
Which Language Is Best For iOS App Development.pdfWhich Language Is Best For iOS App Development.pdf
Which Language Is Best For iOS App Development.pdf
 
The Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App DevelopmentThe Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App Development
 
Localize your business - Software Localization Services LocServ
Localize your business - Software Localization Services LocServLocalize your business - Software Localization Services LocServ
Localize your business - Software Localization Services LocServ
 
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile worldBringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile world
 
Once CODE to rule them all
Once CODE to rule them allOnce CODE to rule them all
Once CODE to rule them all
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
Android Training Chandigarh.docx
Android Training Chandigarh.docxAndroid Training Chandigarh.docx
Android Training Chandigarh.docx
 
Development of DSL for Context-Aware Mobile Applications
Development of DSL for Context-Aware Mobile ApplicationsDevelopment of DSL for Context-Aware Mobile Applications
Development of DSL for Context-Aware Mobile Applications
 
Progamming Path.pptx
Progamming Path.pptxProgamming Path.pptx
Progamming Path.pptx
 
Can your App parle Francais?
Can your App parle Francais?Can your App parle Francais?
Can your App parle Francais?
 

Mobile Cafe #6

Editor's Notes

  1. Make scrennshot of android kill apple