Android vs Windows Mobile vs Java ME: a comparative study of mobile development environments

In this paper we look at three mobile development environments: Windows Mobile, Java ME and Android. Through platform comparison, the different environments are examined closely and strengths and weaknesses are brought to life. In all three environments example applications are written to compare the environments in action on respective devices. Environment specific deployment files are created to illustrate amount of boilerplate code and overhead during deployment. Different key areas such as implementation aspects, performance aspects and quality assurance are compared to give an in depth overview of the status of the different platforms. Our results show that although the three environments are similar in some aspects they still represent three distinctive fields each with their respective characteristics. Through our code examples and platform comparison we come to the conclusion that the Windows Mobile and Android platform provides a better development environment, whereas Java ME still struggles with poor emulator support and incompatible implementations. The main features they have in common are also seen in trends directly visible in the programming languages such as unit testing, language features and end user distribution strategies. Big differences are highlighted when inspecting community environments, hardware abilities and platform maturity. This will have large influence on the choice of development platform for creating novel assistive environment applications.

[1]  Marko T. Heikkinen,et al.  Benefits and challenges of new mobile service development in R&D network , 2006, Personal and Ubiquitous Computing.

[2]  Jukka Riekki,et al.  Plug-and-play application platform: towards mobile peer-to-peer , 2004, MUM '04.

[3]  Clayton Lewis,et al.  Naming practice on an open platform for people with aphasia , 2008, Assets '08.

[4]  刘宇 Windows CE.NET的串口解析 , 2005 .

[5]  Gilles Dubochet Computer Code as a Medium for Human Communication: Are Programming Languages Improving? , 2009, PPIG.

[6]  Michael Juntao Yuan Enterprise J2ME: Developing Mobile Java Applications , 2003 .

[7]  Lei Wang,et al.  Context-aware application programming for mobile devices , 2008, C3S2E '08.

[8]  Steve Benford,et al.  Addressing Mobile Phone Diversity in Ubicomp Experience Development , 2007, UbiComp.

[9]  Greg Foster,et al.  Java Micro Edition and Adobe Flash Lite for arcade-style mobile phone game development: a comparative study , 2008, SAICSIT '08.

[10]  Natasa Milic-Frayling,et al.  On the design and evaluation of web augmented mobile applications , 2007, Mobile HCI.

[11]  Roberto Manduchi,et al.  Universal real-time navigational assistance (URNA): an urban bluetooth beacon for the blind , 2007, HealthNet '07.

[12]  Jerome DiMarzio ANDROID A PROGRAMMERS GUIDE , 2008 .

[13]  N. Pryce,et al.  Issues in Developing Ubicomp Applications on Symbian Phones , 2006, 2006 International Workshop on System Support for Future Mobile Computing Applications.

[14]  Tatsuo Nakajima,et al.  Design issues and an empirical study in mobility oriented service development , 2008, MobMid '08.