Books & Videos

Table of Contents

  1. Chapter 1 What Is Android?

    1. Android Applications

    2. What Is a Hybrid Application?

    3. Categories of Applications

    4. Key Characteristics of Hybrid Apps

    5. Why Developing Hybrid Apps Makes Sense

    6. Hybrid Application Architecture

    7. How Do Hybrid Apps Work on the Android Platform?

  2. Chapter 2 Setting Up Your Android Development Environment

    1. Installing Eclipse on Mac OS X

    2. Installing Android Development Tools

    3. Creating Your First Hybrid Android Project Using Eclipse IDE

    4. Android Development Using the Command Line

    5. What Is ADB (Android Debug Bridge)?

    6. Using Apache Ant to Automate Building Android Applications

    7. Understanding the Android Build Process

    8. CSS Preprocessors

    9. Installing SASS

    10. JSLint Framework and Strict Coding Conventions

    11. Process HTML Templates

    12. Minifying CSS and JavaScript Files Using YUI Compressor

    13. Using Safari and Chrome Browsers for Faster JavaScript Debugging and UI Changes

  3. Chapter 3 Android Fundamentals

    1. Android Application Architecture

    2. Key Android Components

    3. Security Model in Android

    4. Resources

    5. Compiled and Uncompiled Android Resources

    6. Assets

    7. Structure of an Android App

    8. Application Manifest

    9. Activity

    10. Intents

    11. Intent Resolution

    12. Intent Filter

    13. Services

    14. Broadcast Receiver

    15. Specifying Compatible Device Configuration

    16. Declaring Needed Device Features

    17. Permissions

    18. SDK Version

    19. Hands-on Coding: Hybrid Hello World! Application

  4. Chapter 4 WebView, WebKit, and WebSettings

    1. The WebView as a Web Browser

    2. So What Is WebKit?

    3. Requesting Internet Permission from Android Manifest

    4. Instantiating and Accessing the WebView Control

    5. Loading a Web Page

    6. Loading HTML into WebView

    7. WebViewClient

    8. Loading Local Files into the WebView

    9. Load Flash Files into the WebView

    10. Reading Files from the res/raw Directory

    11. Triggering JavaScript Functions from the Java Layer

    12. Opening a WebView in Fullscreen Mode

    13. Enabling a Resize Event in JavaScript While Your Application Is Fullscreen

    14. Binding Java Objects to WebView Using the addJavaScriptInterface() Method

    15. Security Considerations for Hybrid Applications

    16. HttpOnly Cookies and the Secure Flag

    17. Domain Whitelisting

    18. Configuring WebView Settings with WebSettings

    19. Preventing Local Files from Being Loaded in the WebView

    20. Enabling JavaScript

    21. Setting Default Font Size

    22. Zoom Controls

    23. Hardware Acceleration

  5. Chapter 5 Inter-workings of the JavaScript and Java Layers

    1. Architecture of a Hybrid Application

    2. Calling Java Methods from JavaScript

    3. Synchronous APIs

    4. Asynchronous APIs

    5. Calling JavaScript Methods from Java

    6. Routing Data to the Correct JavaScript Receiver

    7. Deferred Object Pattern

    8. Register Success Callback Using deferred.done()

    9. Register Failure Callback Using deferred.fail()

    10. Register Progress Callback Using deferred.progress()

    11. Simpler Callback registration with .then()

    12. Synchronizing Multiple Asynchronous Events with $.when()

    13. Resolve a Deferred Object

    14. Reject a Deferred Object

    15. Use of Promise

    16. Use of deferred.progress()

    17. Cache Manager for Handling Multiple Deferred Objects

    18. Thread Safety

  6. Chapter 6 HTML Architecture for Hybrid Applications

    1. Architecture of a Web Application

    2. Single Page Applications (SPA)

    3. Key Design Considerations for Single Page Applications

    4. The Libraries and Frameworks for Your Hybrid Apps

    5. Backbone.js for MVC Framework

    6. Underscore.js for Utility Support

    7. iScroll.js for scrolling

    8. iScroll Caveats

    9. jQuery.js for JavaScript application

    10. CSS Reset Avoids Browser Inconsistencies

    11. Your Home index.html

    12. Viewport Meta Tag

    13. Viewport Width

    14. Viewport Scaling with the Content Attribute

    15. Responsive Design and Media Queries

    16. EM or Percent (%) unit for scalable interface

    17. CSS3 Introduces rem Unit

    18. Opacity or RGBA: What Is the Difference?

    19. Event Pooling

  7. Chapter 7 CSS, DOM, and JavaScript: Optimization Tips and Useful Snippets

  8. Chapter 8 Publishing Apps for Android

    1. Digitally Signing Applications

    2. Protecting Your Application with ProGuard

    3. Google Play

    4. Registering as a Publisher

    5. Developer Console

    6. Uploading an Application

    7. Amazon App Store

    8. Self-Signing and the Amazon App Store

    9. Amazon App Store Sign Up Process

    10. Uploading an Application

    11. Understanding the Application Approval Process

  1. Colophon