As a result of the increasing number of the Android based mobile devices, there has been a significant increase in the importance of Android applications. In the dynamically growing and rapidly changing world of the Android, it is inevitable to have such software which enables developers to quickly address the market needs.
The Android offers two programming interfaces for software engineers; the first is using the Java programming language and the other utilizes the native C/C++ language. The Android software development aims firstly at the managed environment by considering it the primary language for Android. Regarding the restricted capacity of these mobile devices, it is in some cases necessary to apply the native code. The native programming is playing a growing role in the world of the Android as consumer needs show more complexity and multi-platform applications become more common. Thereby, it is cardinal to examine the properties of the native programming language.
The objective of my thesis was to design and to develop a performance measurement application which allows a detailed discussion of the native programming interface of the Android. In this paper, I describe the operation of the interface focusing on its advantages and drawbacks. I compare the performance of the language by means of different algorithms and analyse the communication between the two interfaces and the related overload. Thereafter, the structure of the performance measurement application will be demonstrated through which the steps of the development process of application including native code will also be highlighted. The thesis discusses the milestones and inherent risks in the development process.
As a conclusion of the measurement performed it can be drawn that the native implementation runs quicker than its Java equivalent. In addition the analyses evidences that the connection between the two interfaces creates such an impediment on the whole system which is not negligible.