SlideShare a Scribd company logo
Android Applications - Localization Quickly develop applications for multiple languages Karan Deep Geddam Developer Advocate, MOTODEV Motorola Mobility, Inc.
AGENDA Introduction Android Apps – Why Localize? Android Platform  Android Support for Localization Sample Application Demo of Sample Application using Eclipse and ADT An Easier Way: MOTODEV Studio Summary Q & A
INTRODUCTION MOTODEV Developer outreach division of Motorola Mobility, Inc. http:// developer.motorola.com Aid developers during app design, development, test, distribution Product details, documentation, articles Technical support and advice through discussion boards Blogs, podcasts Tools to quickly develop applications Get early access to information on Motorola devices
ANDROID APPLICATIONS Android-based devices are activated around the globe Demo of simple application Application downloads Application reach
ANDROID PLATFORM Android is open Apache 2 license Android is extensible Any Android app can be replaced/extended Android is breaking barriers Broad range of Application Programming Interfaces (APIs) and tools Android has a relaxed security model No manufacturer or operator signing Developer declares permissions Android allows native applications Great for porting applications developed in C, Open GL implementations Allows taking full advantage of hardware power
ANDROID PLATFORM Android introduces XML-based UI declarative model Easy to form User Interface (UI) Good model for resolution independence Easy for localization Android allows applications to be written for wide range of displays Includes support for different orientations
ANDROID SUPPORT FOR LOCALIZATION Android allows developers to define application static data separately text strings, layouts, sounds, graphics, etc. Define separate resource sets for different languages/locales Android selects which resources to load based on the device’s locale
RESOURCES & CONFIGURATIONS Android platform support for different features allows for multiple configurations Mobile Country Code (MCC) & Mobile Network Code (MNC) Language and region (ISO 639-1 & ISO 3166-1-alpha-2) Screen size, etc. Android iteratively checks for the configuration qualifier with the best match
LOCALIZATION –  DESIGN CONSIDERATIONS Choose a localization strategy Which countries and languages to support? Default language, country Handling missing resources for a particular locale Layout considerations Identify those aspects of app that need localizing text, sounds, currency, dates, times Design UI for culturally different markets Avoid hard-coding of strings, drawables and layouts Use R.string and strings.xml files Use R.drawable and R.layout
LOCALIZATION –  CONTENT CONSIDERATIONS Create a full set of default resources Obtain reliable translations of all strings Static text, menu text, button labels, error messages, help text Check for handling of word breaks, punctuation, alphabetical sorting in each supported language Create locale-specific resources Graphics Layouts Sounds etc.
LOCALIZATION – TESTING CONSIDERATIONS Test for every supported locale Test for locales not supported by Device/Emulator Test landscape and portrait modes
SAMPLE APPLICATION Simple Body Mass Index (BMI) Calculator Formulae: Imperial Formula BMI = (Wt in pounds * 703) / (ht in inches) 2 Metric Formula BMI = (Wt in Kgs)/(ht in metres) 2 Obese Over 30 Overweight 25 – 29.9 Normal 18.5 – 24.9 Underweight Below 18.5 Weight Status BMI
DEMO USING ECLIPSE AND ADT Eclipse is a universal platform for integrating development tools Open,  extensible architecture based on plug-ins Based on Java http://eclipse.org
DISCLAIMER Except as noted, this source code is licensed as described below. BSD License Copyright © 2010, Motorola, Inc. All rights reserved unless otherwise explicitly indicated. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Motorola, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Apache License, Version 2 Copyright © 2010, Android Open Source Project. All rights reserved unless otherwise explicitly indicated. Licensed under the  Apache License, Version 2.0  (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Demo of Code
EASIER: MOTODEV STUDIO MOTODEV Studio for Android A complete development tools package, based on Eclipse An integral component of Motorola’s handset strategy around building the Android ecosystem. Designed to work with  all  Android Products Free  download from MOTODEV, with registration http:// developer.motorola.com/docstools/motodevstudio Supported on MOTODEV discussion boards Version 1.3 available now on Windows, Linux and Mac OS
MOTODEV Studio vs. Eclipse MOTODEV Studio  is  the Eclipse IDE  Eclipse projects open in MOTODEV Studio (and vice versa)  Installs the Android plug-ins for Android development  Strong emphasis on supporting the full development life cycle Support for Motorola handsets  Useful features not found in Eclipse or Android plug-ins  Can install as plug-in into existing Eclipse installation
OUT OF THE BOX EXPERIENCE Single download and installation  Streamlined download, installation and configuration of Android Software Development Kit(SDK), SDK add-ons and language packs Eclipse and Android SDKs are pre-configured to immediate use  MOTODEV Studio perspective provides access to the most necessary functions  Go from installation to debugging in the emulator in 20 minutes or less
KEY FEATURES Code Snippets Application Creation Wizards Database Management Handset Emulators Deploy Packages Application Signing Translate your App Screen Capture Advance Debugging Tools Develop with C/C++
Demo Using MOTODEV Studio for Android
SUMMARY Need to localize Android application Features of Android and support for localization Develop and localize a simple Android application Easier way to develop and localize an Android application
Participate in the community  Get help, give help  Google groups  MOTODEV discussion board ( http://community.developer.motorola.com )  Local user groups  Where to contribute  Google/OHA (OS/Tools)  Eclipse Foundation (Tools & SDKs)  Pulsar, JDT, CDT, Sequoyah  OpenIntents (components)
Questions? Join the conversation at http://community.developer.motorola.com

More Related Content

PPT
Industrial Training in Android Application
PPTX
Ppt of tutorial android app
PPTX
BHAGWANT UNIVERSITY
PPT
Creating Great Apps with MOTODEV Studio for Android
PPTX
Flutter single codebase to build your dream application for i os and android
PPTX
Android Application Development
PDF
#MBLTdev: Преимущества использования Intel INDE для кросс-ОС разработки на пр...
PPT
Synapseindia android app programming
Industrial Training in Android Application
Ppt of tutorial android app
BHAGWANT UNIVERSITY
Creating Great Apps with MOTODEV Studio for Android
Flutter single codebase to build your dream application for i os and android
Android Application Development
#MBLTdev: Преимущества использования Intel INDE для кросс-ОС разработки на пр...
Synapseindia android app programming

What's hot (19)

PPTX
Getting started with android programming
PPTX
Android summer training report
PDF
Google flutter app development
PPTX
Flutter 2.2 version | skywave info solutions
PPTX
Introduction to Android programming
PPT
Android developer webinar-march-2012-mindstormsoftware
PPTX
Cross platform-mobile-applications
PPTX
Android installation guide
PPTX
Seminar on android app development
PDF
Mobile Development Platforms
PPTX
Building Apps With Flutter
PDF
What To Choose Between - Native App And Hybrid Mobile App
PPTX
Introduction to Android Development: Before Getting Started
PPTX
Telerik app builder
PDF
Adobe gaming flash gamm michael
DOC
Google android os
PDF
IOS vs Android Apps
PDF
Most recommended android app development frameworks for app development
Getting started with android programming
Android summer training report
Google flutter app development
Flutter 2.2 version | skywave info solutions
Introduction to Android programming
Android developer webinar-march-2012-mindstormsoftware
Cross platform-mobile-applications
Android installation guide
Seminar on android app development
Mobile Development Platforms
Building Apps With Flutter
What To Choose Between - Native App And Hybrid Mobile App
Introduction to Android Development: Before Getting Started
Telerik app builder
Adobe gaming flash gamm michael
Google android os
IOS vs Android Apps
Most recommended android app development frameworks for app development
Ad

Viewers also liked (6)

PPT
Digitaltfortalt Vaar 2009
PDF
Reg Reform Fact Sheet
PPT
All About Google
PPT
Improve Your Website Sales
PPS
Card Magic
Digitaltfortalt Vaar 2009
Reg Reform Fact Sheet
All About Google
Improve Your Website Sales
Card Magic
Ad

Similar to Quickly Develop Android Applications for Multiple Languages (20)

PDF
Beyond English - Make Your Android App a Global Success
PPT
MOTODEV Studio for Android
PPT
Migrating JavaME Apps to Android
PDF
Android Development
PPTX
Mobile Application Slide Chapter 2 - Make First App
PPT
Getting started with android dev and test perspective
PDF
Android tutorial
PPTX
Introduction to Android Development
PPT
Android - Android Application Configuration
PDF
Synopsis on android application
PDF
Android Intro
PPT
Android Tutorial
PPT
Android
PDF
Android Overview
PPT
Android tutorial
PPT
Android-Tutorial.ppt
PPT
Android - Anroid Pproject
PPTX
Mobile Worshop Lab guide
PPT
Android tutorial
PPT
Android tutorial
Beyond English - Make Your Android App a Global Success
MOTODEV Studio for Android
Migrating JavaME Apps to Android
Android Development
Mobile Application Slide Chapter 2 - Make First App
Getting started with android dev and test perspective
Android tutorial
Introduction to Android Development
Android - Android Application Configuration
Synopsis on android application
Android Intro
Android Tutorial
Android
Android Overview
Android tutorial
Android-Tutorial.ppt
Android - Anroid Pproject
Mobile Worshop Lab guide
Android tutorial
Android tutorial

More from Motorola Mobility - MOTODEV (20)

PDF
HTML5 vs Native Android: Smart Enterprises for the Future
PDF
The Enterprise Dilemma: Native vs. Web
PPTX
Kill the Laptop!
PPTX
MOTODEV App Validator
PPT
Beautifully Usable, Multiple Screens Too
PPT
Getting the Magic on Android Tablets
PPTX
Getting Your App Discovered: Android Market & Beyond
PPT
Introducing Fragments
PDF
Taking Advantage of Webtop
PDF
Building Quality Into Your Apps Through Testing
PDF
Top Tips for Android UIs
PPT
Designing Apps for Motorla Xoom Tablet
PDF
Diseñando aplicaciones para el Motorola XOOM
PDF
Presentación de los fragmentos
PDF
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
PDF
Consejos principales para Android UI Cómo alcanzar la magia en los tablets
PDF
Cómo agregar calidad a sus aplicaciones mediante pruebas
PDF
Cómo aprovechar Webtop Cómo HTML5 mejora la experiencia del usuario
PDF
Principais dicas para UIs do Android
PDF
Gráficos cada vez mais rápidos utilização de NDK e Renderscript
HTML5 vs Native Android: Smart Enterprises for the Future
The Enterprise Dilemma: Native vs. Web
Kill the Laptop!
MOTODEV App Validator
Beautifully Usable, Multiple Screens Too
Getting the Magic on Android Tablets
Getting Your App Discovered: Android Market & Beyond
Introducing Fragments
Taking Advantage of Webtop
Building Quality Into Your Apps Through Testing
Top Tips for Android UIs
Designing Apps for Motorla Xoom Tablet
Diseñando aplicaciones para el Motorola XOOM
Presentación de los fragmentos
Gráficos cada vez más rápidos. Cómo usar NDK y RenderScript
Consejos principales para Android UI Cómo alcanzar la magia en los tablets
Cómo agregar calidad a sus aplicaciones mediante pruebas
Cómo aprovechar Webtop Cómo HTML5 mejora la experiencia del usuario
Principais dicas para UIs do Android
Gráficos cada vez mais rápidos utilização de NDK e Renderscript

Recently uploaded (20)

PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Big Data Technologies - Introduction.pptx
PDF
Empathic Computing: Creating Shared Understanding
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Cloud computing and distributed systems.
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Big Data Technologies - Introduction.pptx
Empathic Computing: Creating Shared Understanding
Unlocking AI with Model Context Protocol (MCP)
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
The AUB Centre for AI in Media Proposal.docx
Machine learning based COVID-19 study performance prediction
Encapsulation_ Review paper, used for researhc scholars
Mobile App Security Testing_ A Comprehensive Guide.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Cloud computing and distributed systems.
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
NewMind AI Weekly Chronicles - August'25 Week I
MIND Revenue Release Quarter 2 2025 Press Release
Chapter 3 Spatial Domain Image Processing.pdf
Understanding_Digital_Forensics_Presentation.pptx

Quickly Develop Android Applications for Multiple Languages

  • 1. Android Applications - Localization Quickly develop applications for multiple languages Karan Deep Geddam Developer Advocate, MOTODEV Motorola Mobility, Inc.
  • 2. AGENDA Introduction Android Apps – Why Localize? Android Platform Android Support for Localization Sample Application Demo of Sample Application using Eclipse and ADT An Easier Way: MOTODEV Studio Summary Q & A
  • 3. INTRODUCTION MOTODEV Developer outreach division of Motorola Mobility, Inc. http:// developer.motorola.com Aid developers during app design, development, test, distribution Product details, documentation, articles Technical support and advice through discussion boards Blogs, podcasts Tools to quickly develop applications Get early access to information on Motorola devices
  • 4. ANDROID APPLICATIONS Android-based devices are activated around the globe Demo of simple application Application downloads Application reach
  • 5. ANDROID PLATFORM Android is open Apache 2 license Android is extensible Any Android app can be replaced/extended Android is breaking barriers Broad range of Application Programming Interfaces (APIs) and tools Android has a relaxed security model No manufacturer or operator signing Developer declares permissions Android allows native applications Great for porting applications developed in C, Open GL implementations Allows taking full advantage of hardware power
  • 6. ANDROID PLATFORM Android introduces XML-based UI declarative model Easy to form User Interface (UI) Good model for resolution independence Easy for localization Android allows applications to be written for wide range of displays Includes support for different orientations
  • 7. ANDROID SUPPORT FOR LOCALIZATION Android allows developers to define application static data separately text strings, layouts, sounds, graphics, etc. Define separate resource sets for different languages/locales Android selects which resources to load based on the device’s locale
  • 8. RESOURCES & CONFIGURATIONS Android platform support for different features allows for multiple configurations Mobile Country Code (MCC) & Mobile Network Code (MNC) Language and region (ISO 639-1 & ISO 3166-1-alpha-2) Screen size, etc. Android iteratively checks for the configuration qualifier with the best match
  • 9. LOCALIZATION – DESIGN CONSIDERATIONS Choose a localization strategy Which countries and languages to support? Default language, country Handling missing resources for a particular locale Layout considerations Identify those aspects of app that need localizing text, sounds, currency, dates, times Design UI for culturally different markets Avoid hard-coding of strings, drawables and layouts Use R.string and strings.xml files Use R.drawable and R.layout
  • 10. LOCALIZATION – CONTENT CONSIDERATIONS Create a full set of default resources Obtain reliable translations of all strings Static text, menu text, button labels, error messages, help text Check for handling of word breaks, punctuation, alphabetical sorting in each supported language Create locale-specific resources Graphics Layouts Sounds etc.
  • 11. LOCALIZATION – TESTING CONSIDERATIONS Test for every supported locale Test for locales not supported by Device/Emulator Test landscape and portrait modes
  • 12. SAMPLE APPLICATION Simple Body Mass Index (BMI) Calculator Formulae: Imperial Formula BMI = (Wt in pounds * 703) / (ht in inches) 2 Metric Formula BMI = (Wt in Kgs)/(ht in metres) 2 Obese Over 30 Overweight 25 – 29.9 Normal 18.5 – 24.9 Underweight Below 18.5 Weight Status BMI
  • 13. DEMO USING ECLIPSE AND ADT Eclipse is a universal platform for integrating development tools Open, extensible architecture based on plug-ins Based on Java http://eclipse.org
  • 14. DISCLAIMER Except as noted, this source code is licensed as described below. BSD License Copyright © 2010, Motorola, Inc. All rights reserved unless otherwise explicitly indicated. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Motorola, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Apache License, Version 2 Copyright © 2010, Android Open Source Project. All rights reserved unless otherwise explicitly indicated. Licensed under the  Apache License, Version 2.0  (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
  • 16. EASIER: MOTODEV STUDIO MOTODEV Studio for Android A complete development tools package, based on Eclipse An integral component of Motorola’s handset strategy around building the Android ecosystem. Designed to work with all Android Products Free download from MOTODEV, with registration http:// developer.motorola.com/docstools/motodevstudio Supported on MOTODEV discussion boards Version 1.3 available now on Windows, Linux and Mac OS
  • 17. MOTODEV Studio vs. Eclipse MOTODEV Studio is the Eclipse IDE Eclipse projects open in MOTODEV Studio (and vice versa) Installs the Android plug-ins for Android development Strong emphasis on supporting the full development life cycle Support for Motorola handsets Useful features not found in Eclipse or Android plug-ins Can install as plug-in into existing Eclipse installation
  • 18. OUT OF THE BOX EXPERIENCE Single download and installation Streamlined download, installation and configuration of Android Software Development Kit(SDK), SDK add-ons and language packs Eclipse and Android SDKs are pre-configured to immediate use MOTODEV Studio perspective provides access to the most necessary functions Go from installation to debugging in the emulator in 20 minutes or less
  • 19. KEY FEATURES Code Snippets Application Creation Wizards Database Management Handset Emulators Deploy Packages Application Signing Translate your App Screen Capture Advance Debugging Tools Develop with C/C++
  • 20. Demo Using MOTODEV Studio for Android
  • 21. SUMMARY Need to localize Android application Features of Android and support for localization Develop and localize a simple Android application Easier way to develop and localize an Android application
  • 22. Participate in the community Get help, give help Google groups MOTODEV discussion board ( http://community.developer.motorola.com ) Local user groups Where to contribute Google/OHA (OS/Tools) Eclipse Foundation (Tools & SDKs) Pulsar, JDT, CDT, Sequoyah OpenIntents (components)
  • 23. Questions? Join the conversation at http://community.developer.motorola.com