Learn how to develop applications for Android mobile devices using simple examples, ready to run with your copy of the software development kit. Author and Android columnist, writer, developer, and community advocate Mark L. Murphy shows you what you need to know to get started on programming Android applications–everything from crafting graphical user interfaces to using GPS, accessing web services, and more! The Android development platform, created by Google and the Open Handset Alliance, is a platform in its truest sense, encompassing hundreds of classes beyond the traditional Java classes and open source components that ship with the SDK. Some Android books race through the material, trying to cover as much ground as possible in as few pages as possible. Experienced writer and community advocate Mark Murphy shows you how to develop Android applications simply and with care. The book includes dozens of sample projects, ready to run with your copy of the SDK—not just one huge project where you have difficulty finding the specific examples of the technique you are looking for. You can even get these sample programs online at Apress.com. What you’ll learn Discover what Android is and how to use Android to build Java-based mobile applications for Google Phones G1 and more phones as they hit the market Work with the new Android 1.x SDK Create user interfaces using both the Android Widget framework and the built-in WebKit-powered web browser components Use scripting with BeanShell Work with menu inflation, fonts, SDK tools, rotation events, and more Work with TabActivity, MyLocationOverlay, DDMS, and more Utilize the distinctive capabilities of the Android engine including maps, Internet access, integrated search, media playback, and more Use and create similar sample Android applications for services, content providers, mapping, and location-based services/events. Who this book is for This book is aimed at people new to mobile development, perhaps even to Java itself. Table of Contents The Big Picture Project Structure Inside the Manifest Creating a Skeleton Application Using XML-Based Layouts Employing Basic Widgets Working with Containers Using Selection Widgets Getting Fancy with Lists Employing Fancy Widgets and Containers Applying Menus Fonts Embedding the WebKit Browser Showing Pop-Up Messages Dealing with Threads Handling Activity Lifecycle Events Using Preferences Accessing Files Working with Resources Managing and Accessing Local Databases Leveraging Java Libraries Communicating via the Internet Creating Intent Filters Launching Activities and Sub-Activities Finding Available Actions via Introspection Handling Rotation Using a Content Provider Building a Content Provider Requesting and Requiring Permissions Creating a Service Invoking a Service Alerting Users Via Notifications Accessing Location-Based Services Mapping with MapView and MapActivity Handling Telephone Calls Searching with SearchManager Development Tools Where Do We Go From Here?