We will take a look at how to create a new Android application project inside Eclipse, how that project is structured and organized in the Eclipse Package Explorer, how Android uses XML mark-up to define data structures, project parameters, OS permissions and user interfaces quickly and easily, so that we don’t have to do this in Java, how our new media assets are named and stored in predefined logical resource folder hierarchies, and of course, how the Java programming language bootstraps and pulls it all together via Android Packages, Classes, Methods and Constants. Android Development is definitely unique.
Android Application Development Lingo
Android uses very unique terminology to describe the various components or areas of its application development. In this section, I define what these areas are, and what they most closely equate to in other common programming languages such as C++ or Java. Plus, I’ll give you a little more insight as to what open source technologies besides Java and XML drive Android under the hood, as well as how Android optimizes its Java into binaries for use on Embedded (Portable Consumer Electronics) Devices.
The Foundation of Android: The Linux 2.6 Kernel
The foundation of the Android OS is the Linux 2.6 Kernel; just like the Eclipse IDE runs on top of Java, Android runs on top of a full version of the latest Linux operating system. So yes, any and all Android devices are essentially fully functional Linux computers, which is why you see Android devices these days with dual-core, quad-core, and octa-core processors, just like “real” computers feature.
First, however, we will need to spend a little time up-front learning about the various components of an Android Application. We will learn what the various Android components are termed inside of the Android environment. Android uses some very unique terminology or lingo to describe the various Android application components, and we will learn this lingo as well as how these components all work seamlessly together.