Unlocking Android
A Developer's Guide
W. Frank Ableson, Charlie Collins and Robi Sen
  • April 2009
  • ISBN 9781933988672
  • 416 pages
  • printed in black & white
This title is out of print and no longer for sale.

Valuable, useful.

Dick Wall, Senior Engineer, Former Android Advocate for Google, and Java Posse Co-Host

Revised edition of this book is available

Android is an open source mobile phone platform based on the Linux operating system and developed by the Open Handset Alliance, a consortium of over 30 hardware, software and telecom companies that focus on open standards for mobile devices. Led by search giant, Google, Android is designed to deliver a better and more open and cost effective mobile experience.

Unlocking Android: A Developer's Guide provides concise, hands-on instruction for the Android operating system and development tools. This book teaches important architectural concepts in a straightforward writing style and builds on this with practical and useful examples throughout. Based on his mobile development experience and his deep knowledge of the arcane Android technical documentation, the author conveys the know-how you need to develop practical applications that build upon or replace any of Androids features, however small.

Table of Contents show full

foreword

preface

acknowledgments

about this book

about the cover illustration

Part 1 What is Android? — The Big Picture

1. Targeting Android

1.1. Introducing Android

1.2. Stacking up Android

1.3. Booting Android development

1.4. An Android application

1.5. Summary

2. Development environment

2.1. The Android SDK

2.2. Fitting the pieces together

2.3. Building an Android application in Eclipse

2.4. The Android Emulator

2.5. Debugging

2.6. Summary

Part 2 Exercising the Android SDK

3. User interfaces

3.1. Creating the Activity

3.2. Working with views

3.3. Using resources

3.4. Understanding the AndroidManifest file

3.5. Summary

4. Intents and services

4.1. Working with Intent classes

4.2. Listening in with broadcast receivers

4.3. Building a Service

4.4. Performing Inter-Process Communication

4.5. Summary

5. Storing and retrieving data

5.1. Using preferences

5.2. Using the filesystem

5.3. Persisting data to a database

5.4. Working with ContentProvider classes

5.5. Summary

6. Networking and web services

6.1. An overview of networking

6.2. Checking the network status

6.3. Communicating with a server socket

6.4. Working with HTTP

6.5. Web services

6.6. Summary

7. Telephony

7.1. Telephony background and terms

7.2. Accessing telephony information

7.3. Interacting with the phone

7.4. Working with messaging: SMS

7.5. Summary

8. Notifications and alarms

8.1. Introducing Toast

8.2. Introducing notifications

8.3. Alarms

8.4. Summary

9. Graphics and animation

9.1. Drawing graphics in Android

9.2. Animations

9.3. Summary

10. Multimedia

10.1. Introduction to multimedia and OpenCORE

10.2. Playing audio

10.3. Playing video

10.4. Capturing media

10.5. Summary

11. Location, location, location

11.1. Simulating your location within the emulator

11.2. Using LocationManager and LocationProvider

11.3. Working with maps

11.4. Converting places and addresses with Geocoder

11.5. Summary

Part 3 Android applications

12. Putting it all together–the Field Service Application

12.1. Field Service Application requirements

12.2. Android application tour

12.3. Android code

12.4. Digging deeper into the code

12.5. Server code

12.6. Summary

13. Hacking Android

13.1. The Android/Linux:junction

13.2. A better way

13.3. What time is it?

13.4. Daytime Client

13.5. Summary

Appendix A: Installing the Android SDK

Appendix B: Signing and installing applications on an Android device

index

© 2014 Manning Publications Co.

About the book

Unlocking Android: A Developer's Guide provides concise, hands-on instruction for the Android operating system and development tools. This book teaches important architectural concepts in a straightforward writing style and builds on this with practical and useful examples throughout. Based on his mobile development experience and his deep knowledge of the arcane Android technical documentation, the author conveys the know-how you need to develop practical applications that build upon or replace any of Androids features, however small.

What's inside

  • Android's place in the market
  • Using the Eclipse environment for Android development
  • The Intents - how and why they are used
  • Application classes:
    • Activity
    • Service
    • IntentReceiver
  • User interface design
  • Using the ContentProvider to manage data
  • Persisting data with the SQLite database
  • Networking examples
  • Telephony applications
  • Notification methods
  • OpenGL, animation & multimedia
  • Sample Applications

About the reader

Unlocking Android: A Developer's Guide prepares the reader to embrace the platform in easy-to-understand language and builds on this foundation with re-usable Java code examples. It is ideal for corporate and hobbyists alike who have an interest, or a mandate, to deliver software functionality for cell phones.

About the authors

Frank Ableson is a prolific software entrepreneur with a focus on mobile and embedded technology. Frank is very active in the mobile software marketplace as he works with leading mobile companies including Handango, Airtime Management, and UnwiredTools.

Charlie Collins is a software developer and author. Charlie has over 12 years of experience with Java and is interested in many areas of Java development including: SE, EE, mobile and embedded, and alternative languages on the JVM. Charlie is the co-author of GWT in Practice and has written various online articles. Charlie has also been an ardent open source supporter for many years and has contributed documentation and patches for several open source projects. Charlie is the co-creator and maintainer of GWT-Maven, and is also currently a Maven Mojo committer.

Robi Sen is a Managing Partner at Twin Technologies, LLC where he spends most of his time helping deliver next generation Rich Internet Applications to Twin Technologies customers. Robi also has experience in the wireless space and has recently worked on projects focusing on electronic warfare and electronic counter measures.