Android Software Internationalization

  • Dustin Kendall

  • March 10th, 2019


Project Description

At the beginning of 2019, our company made a business decision to sell our product overseas. We had been a smaller company before and had very little business globally. The application had been written for use only by English speakers.

My supervisor had given me the task of refactoring the application to support the German language by March 2019. I had three months to accomplish this task, working part-time while attending school full time.

Process and Implementation

First thing, I used a script that utilized 'Google Translate' to translate all the strings available in the resource files of the application. I knew the translations were not %100 percent accurate, but they gave me a feel for how the language swap affected the UI/UX.

After having the strings within the application, I spent the next few days compiling a TODO list by going through the application screen by screen and using every function. The language change broke the UI/UX, many features, and overall reliability of the application. Which seemed daunting, but the list grew smaller a task-by-task.

Though I thoroughly enjoyed the work, I kept in mind that I did not want to be doing redoing the job again for a different language. I decided I would also make sure that the application was ready to support more than just German and English from a software, UI/UX, and functionality standpoint.

Implementing a Translation Management System

There was also the problem of initially sending spreadsheets back and forth. I did research attempting to solve this problem. I eventually implemented a third-party service called a Translation Management System (TMS). This system allowed us to sync a remote branch with our development branch that notified our translators of new strings that my colleagues and I added to our application. The system allowed us to collaborate on specific translations, communicate business goals, and consistent conveyance of our intended message across multiple languages. Integrating the translations required us to merge the automatically generated branch as opposed to manually entering all of them into the strings file.


I am happy to say that the application now supports German, English, Spanish, and French - with Hungarian on its way! Our work was Continental's center piece at the international trade show, Hannover Messe 2019.