Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
Android is an open source operating system targeted for mobile platforms. This open source Operating System running under the linux Kernel 2.6 platform. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
There is a lot of similarities in Apple iOS and Android OS were created . There are several difference in to use objectives of C++ as a programming language. The main advantages of Android operating System is run on CPU’s with x86 ,ARM and Atom architecture, but Apple iOS runs only on Apple-built hardware.
So that the Android developers need not to build their applications in several binary version. To make the same application binaries working across different hardware. Google had to use a container-base architecture binaries are executed by a software container which isolates them from details if particular hardware the binaries are running on.
Google Android convert java code to DJVM[Dalvik JVM] binaries run time. Android application architecture is a framework-based application and Java programming is a free-style application architecture. Actually what is the difference between free-style application and framework- based application architecture. A free-style application written in Java starts from a class with main() method and the programmer can do anything as he wish.
In framework-based application is based on an existing framework and a developer extends certain classes or implements interfaces provided by the framework to buid an application. The application can’t run outside of the frame work. So framework-based architectures limit freedom of developers by prescribing what to do and how to do certain things.