Datasheet

12
CHAPTER 1 HELLO, ANDROID
software that can be run on low-power devices, you can now write mobile applications that change the
way people use their phones.
While Android will still have to compete with existing and future mobile development platforms as an
open-source developer framework, the strength of the development kit is very much in its favor. Cer-
tainly its free and open approach to mobile application development, with total access to the phone’s
resources, is a giant step in the right direction.
INTRODUCING THE DEVELOPMENT FRAMEWORK
With the PR job done, it’s time to look at how you can start developing applications for Android.
Android applications are written with Java as a programming language but executed by means of a
custom virtual machine called Dalvik rather than a traditional Java VM.
Later in this chapter you’ll be introduced to the framework, starting with a technical explanation of the
Android software stack, a look at what’s included in the SDK, an introduction to the Android libraries,
and a look at the Dalvik virtual machine.
Each Android application runs in a separate process within its own Dalvik instance, relinquishing all
responsibility for memory and process management to the Android run time, which stops and kills
processes as necessary to manage resources.
Dalvik and the Android run time sit on top of a Linux kernel that handles low-level hardware inter-
action, including drivers and memory management, while a set of APIs provides access to all the
underlying services, features, and hardware.
What Comes in the Box
The Android software development kit (SDK) includes everything you need to start developing, testing,
and debugging Android applications. Included in the SDK download are:
The Android APIs The core of the SDK is the Android API libraries that provide devel-
oper access to the Android stack. These are the same libraries used at Google to create native
Android applications.
Development tools So you can turn Android source code into executable Android appli-
cations, the SDK includes several development tools that let you compile and debug your
applications. You will learn more about the developer tools in Chapter 2.
The Android Virtual Device Manager and Emulator The Android Emulator is a fully inter-
active Android device emulator featuring several alternative skins. The emulator runs within
an Android Virtual Device that simulates the device hardware configuration. Using the emu-
lator you can see how your applications will look and behave on a real Android device. All
Android applications run within the Dalvik VM, so the software emulator is an excellent
environment in fact, as it is hardware-neutral, it provides a better independent test envi-
ronment than any single hardware implementation.
Full documentation The SDK includes extensive code-level reference information detail-
ing exactly what’s included in each package and class and how to use them. In addition to