Before you can write Java programs for Android devices, you need some software tools. Some tools are necessary; some are optional. Here’s a list of the tools you need:
- A Java virtual machineCool people refer to this item as the JVM or simply as Java.
- The Java code librariesThese code libraries are known affectionately as the Java Runtime Environment (JRE) or simply as Java.
- An integrated development environmentYou can create Java programs using geeky, keyboard-only tools, but eventually you’ll tire of typing and retyping commands. An integrated development environment (IDE), on the other hand, is a little like a word processor: A word processor helps you compose documents (memos, poems, and other works of fine literature); in contrast, an IDE helps you compose computer programs.The Eclipse IDE is great for composing Java programs.
You should also gather these extra goodies:
- Some sample Java programs to help you get startedYou can download lots of sample code from the Java Programming for Android Developers for Dummies webpage.
- The Android Software Development KitThe Android Software Development Kit (SDK) includes lots and lots of prewritten, reusable Android code and a bunch of software tools for running and testing Android apps.The prewritten Android code is the Android Application Programming Interface (API). The API comes in several versions — versions 9 and 10 (both code-named Gingerbread), versions 11, 12, and 13 (Honeycomb), versions 14 and 15 (Ice Cream Sandwich), and so on.
- Android-oriented add-ons for the integrated development environmentBy using add-ons, you customize the Eclipse IDE to help you compose, run, and test your Android apps. The set of Eclipse add-ons for working with Android apps is the Android Development Toolkit (ADT).
All these tools run on the development computer — the laptop or desktop computer you use to develop Java programs and Android apps. After you create an Android app, you copy the app’s code from the development computer to a target device — a phone, a tablet, or (someday soon) a refrigerator that runs Android.