Intel for Android* Developers Learning Series Landing Page

This is an online version of Intel Press Book: An Introduction... Intel for Android* Developers.  Engineers from different Intel teams including Mobile Computing, Android* OS, Development Tools and Software and Services as well as subject experts from outside Intel contributed to this series of Intel for Android* Developer Learning. There are also new sessions that are on working in process and will be avaialbe to Intel Android* community (http://software.intel.com/en-us/android/) in near future:

Intel for Android* Developers Learning Series #1: Introducing Android* on Intel Processors

1. Intel and Android*, a Brief History
        1.1 Android x86 Project
        1.2 Moorestown Platform
        1.3 Intel and Google Partnership
        1.4 Medfield Platform
2. Devices 3
        2.1 Avaya Flare*
        2.2 ViewSonic ViewPad 10*
        2.3 Lava Xolo X900*
        2.4 Lenovo K800*
        2.5 Orange San Diego*
        2.6 Future Devices
3. Android SDK/NDK x86 Support
4. Intel Software for Android
        4.1 Intel®  Hardware Accelerated Execution Manager (Intel®  HAXM)
        4.2 Intel®  Graphics Performance Analyzer (Intel GPA)
        4.3 Intel® AtomTM X86 System Image for Android* 4.0

Intel for Android* Developers Learning Series #2:The Intel Mobile Processors

1. Inside Medfield
        1.1 Saltwell, the General Picture
2. Architecture Differences between Saltwell and ARM(Cortex A15)
        2.1 Architecture
        2.2 Integrated Pipelines
        2.3 Instruction Sets
        2.4 Multi-Core / Thread Support
        2.5 Security Technology
3. Intel® Hyper-Threading Technology
4. Application Compatibility: Native Development Kit and Binary Translator

Intel for Android* Developers Learning Series #3: Android Phones with Intel Processors

1. Lava Xolo X900
        1.1 Hardware
        1.2 Software
        1.3 Benchmarks
2. Lenovo K800*
        2.1 Hardware
        2.2 Software
        2.3 Benchmarks
3. Orange San Diego*
        3.1 Hardware
        3.2 Software
        3.3 Benchmarks

Intel for Android* Developers Learning Series #4: Android* Tablet Sensors

1. Sensor on Intel® Atom™ Processor-Based Android Tablets
2. Android Sensor Framework
        2.1 Obtaining Sensor Configuration
        2.2 Sensor Coordinate System
        2.3 Monitoring Sensor Events
        2.4 Motion Sensors
        2.5 Position Sensors
        2.6 Environment Sensors
        2.7 Sensor Performance and Optimization Guidelines
3. GPS and Location
        3.1 Android Location Services
        3.2 Obtaining GPS location updates
        3.3 GPS and Location Performance and Optimization Guideline
4. Summary

Intel for Android* Developers Learning Series #5: Installing the Android* SDK for Intel® Architecture

1. Supported Operating Systems
2. Hardware Requirements
3. Installing the JDK
4. Installing Eclipse*
5. Installing Apache Ant (Optional)
6. Downloading the SDK Starter Package and Adding the SDK Components
7. Setting Up Eclipse to Work with the SDK
        7.1 Installing the ADT Plugin for Eclipse
        7.2 Configuring the ADT Plugin
8. Overview of Android Virtual Device Emulation
9. What Emulator Should You Use?
10. Why Use the Emulator?
11. Building and Emulator Image
12. Setting Up the SDK to Use x86 Emulator Images
13. Sample Gingerbread Feature: Battery Usage Stats
14. Sample Gingerbread Feature: Task Manager
15. Sample Gingerbread Feature: Cut and Past Text
16. Ice Cream Sandwich Emulation
17. Installation Guide
        17.1 Prerequisites
        17.2 Downloading through the Android SDK Manager
        17.3 Using the System Image
        17.4 Downloading Manually
        17.5 CPU Acceleration
        17.6 GPU Acceleration

Intel for Android* Developers Learning Series #6: Debugging on Android* OS

1. Prerequisites
        1.1 Intel® USB Driver for Android Devices
        1.2 Installing the Intel® Atom™ x86 System Image for Android Emulator
2. Application Debug using the Android Debug Bridge
        2.1 Setting Up ADB
        2.2 ADB on Windows
        2.3 ADB Host-Client Communication
        2.4 Key ADB Device Commands
        2.5 Using the android Debug Tools Plugin for Eclipse
                2.5.1 The Debug Perspective in Eclipse
                2.5.2 The DDMS Perspective
                2.5.3 Application Runtime Environment for Debug
3. Intel Hardware Accelerated Execution Manager
        3.1 KVM Installation
        3.2 Using a 64-Bit Kernel
        3.3 Install KVM
        3.4 Starting the Android Virtual Device
        3.5 Using AVD Manager in Eclipse to Launch a Virtual Device
4. Running Android within Oracle* VirtualBox*
        4.1 Google x86 VirtualBox Build Targets for Android 4.x
                4.1.1 Downloading the Source Tree and Installing the Repository
        4.2 Building a Custom Kernel with Mouse Support
                 4.2.1 Add Patched Kernel
                 4.2.2 Reduce Compile Time Using CCACHE
                 4.2.3 Build Android 4.0.x with New Kernel
        4.3 Build the VirtualBox Disk and Android Installer
        4.4 Using an Android Installer Disk to Create a Large Virtual Partition
        4.5 Serial Port
        4.6 Ethernet
                  4.6.1 Final Notes
5. Debugging with GDB, the GNU Project Debugger
6. The Intel® Graphics Performance Analyzer (Intel® GPA)
7. System Debug of Android OS Running on an Intel® Atom™ Processor
        7.1 JTAG Debugging
        7.2 Android OS Debugging
        7.3 Device Driver Debugging
        7.4 Hardware Breakgpoints
8. Cross-Debug: Intel® Atom™ Processor and ARM Architecture
        8.1 Variable Length Instruction
        8.2 Hardware Interrupts
        8.3 Single Step
8.4 Virtual Memory Mapping
9. Considerations for Intel® Hyper-Threading Technology
10. SoC and Interaction of Heterogeneous Multi-Core
        10.1 SVEN (System Visible Event Nexus)
        10.2 Signal Encode/Decode Debug
        10.3 SVEN Benefits
11. Summary
12. References

Intel for Android* Developers Learning Series #7: Creating and Porting NDK-based Android* Applications for Intel® Architecture

1. Introduction to Native Development Kit
2. Building a “Hello, world!” Application with NDK
        2.1 Prepare and Validate the Environment
        2.2 Building with GNU* Compiler
        2.3 Building with the Intel® C++ Compiler
        2.4 Packaging Intel® C++ Compiler Shared Libraries
3. Intel® C++ Compiler Options
        3.1 Compatibility Options
        3.2 Performance Options
4. Vectorization
        4.1 Vectorization Report
        4.2 Pragmas
        4.3 Interprocedural Optimizations
        4.4Limitations of Auto-Vectorization
        4.5 Interprocedural Optimization

Intel for Android* Developers Learning Series #8: Building the Android* OS for Intel Processors

1. Building Android Images with the GNU* Compile for Android
        1.1 Workspace Preparation
        1.2 Configuration the Build Environment
        1.3 Building the Image
2. Building Kernels
         2.1 Building the Kernel using the GNU* Compiler for Android
         2.2 Building the Kernel using the Intel® C++ Compiler for Android
3. Building Images with the Intel C++ Compiler for Android
         3.1 Intel Compiler Integration
         3.2 Flexible Build System Configuration

Intel for Android* Developers Learning Series #9:Using the Scalable Vector Graphics Library to Render Graphics on Android for Intel® Architecture

1. SVG Functionality
2. SVG Shapes
3. SVG Library Integration
4. Render a File Using Revised SVG
        4.1 Why Use SAX?
                4.1.1 What is SAX?
                4.1.2 Benefits
                4.1.3 Drawbacks
        4.2 How to implement the SAX Parser in Android
        4.3 Why Revise the Original SVG Library?
        4.4 SVG XML File with Attributes in the Rendering Tag
        4.5 SVG XML File with Attributes in Group Tag

Intel for Android* Developers Learning Series #10:Understanding GPUs on Android* for the Intel® Atom™ Processor

1. Introduction
2. GPU Evolution
3. Two Major Mobile GPU Designs
        3.1 Advantages of Deferred Mode GPUs
        3.2 Advantages of Immediate Mode GPUs
4. Optimizing for Intel GPUs
5. Conclusion

Intel for Android* Developers Learning Series #11:OpenGL ES* Support, Performance, and Features for Android* on the Intel® Atom™ Processor

1. Introduction
2. x86 System Images for Android Virtual Device Emulation
3. Intel Graphics Performance Analyzers
4. Where to Get the OpenGL ES Drivers
5. The PowerVR* GPU
6. Extensions to OpenGL ES
7. Floating-Point Performance
8. The Android Framework SDK
9. The Android NDK
10. Renderscript
11. Conclusion

For more complete information about compiler optimizations, see our Optimization Notice.