Android: Investigating the quantity and quality of localizations
Introduction
Are you keen to study natural languages and their use in mobile apps? Have you ever wondered how, to which extent, and with which quality developers localize their apps?
We are currently taking an effort to gather knowledge about different development tasks found in the Android app development life cycle. This project primarily covers the localization features and their use in Android mobile apps. Natural language processing (NLP) is a well established field of study. However, it has mostly been used for reasoning about app descriptions in online app stores, and to extract individual features from source code. To our knowledge, it has rarely been carried out to the localization of mobile apps.
Problems
A few problems you'll be confronted with:
- Use of multiple software languages (Groovy, XML, JSON, ...)
- Different localization styles
- Foreign languages
- Collection of contextual information (to which object does a localized element belong?)
State of the art
There exist various tools which can enumerate localized data [1] [2] [3], however, Android is an ecosystem which changes continuously and thus potentially introduces incompatibility issues with every new release.
We found that no tool provides a ``does it all\'' solution.
Task
In this seminar project, we want to explore the use of localization in application meta data, and if possible, extract text snippets in different natural languages to build a comprehensive reference list of frequently used translations which can be considered as well understood by end users.
Your task will consist of:
- Detection and extraction of localized data
- Matching different language pairs and storing them in a database
- Comparing and rating the different localizations
Guiding research questions
- What are the localization techniques in Android apps?
- Which implications introduce foreign scripts with different writing directions, characters, etc.?
- How does the use and quality of localizations differ between apps?
References
[1] An overview about XML parsers that can be found in the Java standard library.
[2] An overview about JSON parsers.
[3] Official introduction into the use of Android localization techniques.