Learning Android

Learning Android



  Want to build apps for Android devices? This book is the perfect way to master the fundamentals. Written by an expert who's taught this mobile platform to hundreds of developers in large organizations, this gentle introduction shows experienced object-oriented programmers how to use Android’s basic building blocks to create user interfaces, store data, connect to the network, and more.
You'll build a Twitter-like application throughout the course of this book, adding new features with each chapter. Along the way, you'll also create your own toolbox of code patterns to help you program any type of Android application with ease.
  • Get an overview of the Android platform and discover how it fits into the mobile ecosystem
  • Learn about the Android stack, including its application framework, and the structure and distribution of application packages (APK)
  • Set up your Android development environment and get started with simple programs
  • Use Android’s building blocks-Activities, Intents, Services, Content Providers, and Broadcast Receivers
  • Learn how to build basic Android user interfaces and organize UI elements in Views and Layouts
  • Build a service that uses a background process to update data in your application
  • Get an introduction to Android Interface Definition Language (AIDL) and the Native Development Kit (NDK).
About the Author
Marko Gargenta
is the founder and chief Android expert at Marakana, a training company in San Francisco. Marko has developed Android Bootcamp and Android Internals courses, and has trained over 1,000 developers on four continents. His clients include Qualcomm, Sony-Ericsson, Motorola, Sharp, Cisco, U.S. Department of Defense, and many more. Marko frequently speaks on Android at technical conferences and events, and is the founder of San Francisco Android Users Group.


Table of Contents
Chapter 1 Android Overview
    Android Overview
    History
    Android Versions
    Summary
Chapter 2 The Stack
    Stack Overview
    Linux
    Native Libraries
    Dalvik
    Application Framework
    Applications
    Summary
Chapter 3 Quick Start
    Installing the Android SDK
    Hello, World
    The Emulator
    Summary
Chapter 4 Main Building Blocks
    What Are Main Building Blocks?
    A Real-World Example
    Activities
    Intents
    Services
    Content Providers
    Broadcast Receivers
    Application Context
    Summary
Chapter 5 Yamba Project Overview
    The Yamba Application
    Design Philosophy
    Project Design
    Part 1: Android User Interface
    Part 2: Preferences, Filesystem, Options Menu, and Intents
    Part 3: Android Services
    Part 4: Working with Databases
    Part 5: Lists and Adapters
    Part 6: Broadcast Receivers
    Part 7: Content Providers
    Part 8: System Services
    Summary
Chapter 6 Android User Interface
    Two Ways to Create a User Interface
    Views and Layouts
    Starting the Yamba Project
    The StatusActivity Layout
    The StatusActivity Java Class
    Logging in Android
    Threading in Android
    Other UI Events
    Adding Color and Graphics
    Alternative Resources
    Optimizing the User Interface
    Summary
Chapter 7 Preferences, the Filesystem, the Options Menu, and Intents
    Preferences
    The Options Menu
    Shared Preferences
    The Filesystem Explained
    Summary
Chapter 8 Services
    The Yamba Application Object
    UpdaterService
    Looping in the Service
    Pulling Data from Twitter
    Summary
Chapter 9 The Database
    About SQLite
    DbHelper
    First Example
    Update UpdaterService
    Refactoring Status Data
    Summary
Chapter 10 Lists and Adapters
    TimelineActivity
    Basic TimelineActivity Layout
    About Adapters
    TimelineAdapter
    ViewBinder: A Better Alternative to TimelineAdapter
    Updating the Manifest File
    Base Activity
    Summary
Chapter 11 Broadcast Receivers
    About Broadcast Receivers
    BootReceiver
    The TimelineReceiver
    Broadcasting Intents
    The Network Receiver
    Adding Custom Permissions to Send and Receive Broadcasts
    Summary
Chapter 12 Content Providers
    Creating a Content Provider
    Using Content Providers Through Widgets
    Summary
Chapter 13 System Services
    Compass Demo
    Location Service
    Updating Yamba to Use the Location Service
    Intent Service
    Sending Notifications
    Summary
Chapter 14 The Android Interface Definition Language
    Implementing the Remote Service
    Implementing the Remote Client
    Summary
Chapter 15 The Native Development Kit (NDK)
    What Is and Isn’t the NDK For?
    Problems Solved by the NDK
    An NDK Example: Fibonacci
    Summary



Download File