Android Native Development Kit Cookbook
Formats:
save 15%!
save 37%!
Free Shipping!
| Also available on: |
|
- Build, debug, and profile Android NDK apps
- Implement part of Android apps in native C/C++ code
- Optimize code performance in assembly with Android NDK
Book Details
Language : EnglishPaperback : 346 pages [ 235mm x 191mm ]
Release Date : March 2013
ISBN : 1849691509
ISBN 13 : 9781849691505
Author(s) : Feipeng Liu
Topics and Technologies : All Books, Android, Cookbooks
Table of Contents
PrefaceChapter 1: Hello NDK
Chapter 2: Java Native Interface
Chapter 3: Build and Debug NDK Applications
Chapter 4: Android NDK OpenGL ES API
Chapter 5: Android Native Application API
Chapter 6: Android NDK Multithreading
Chapter 7: Other Android NDK API
Chapter 8: Porting and Using the Existing Libraries with Android NDK
Chapter 9: Porting an Existing Application to Android with NDK
Index
- Chapter 1: Hello NDK
- Introduction
- Setting up an Android NDK development environment in Windows
- Setting up an Android NDK development environment in Ubuntu Linux
- Setting up an Android NDK development environment in Mac OS
- Updating Android NDK
- Writing a Hello NDK program
- Chapter 2: Java Native Interface
- Introduction
- Loading native libraries and registering native methods
- Passing parameters and receiving returns in primitive types
- Manipulating strings in JNI
- Managing references in JNI
- Manipulating classes in JNI
- Manipulating objects in JNI
- Manipulating arrays in JNI
- Accessing Java static and instance fields in the native code
- Calling static and instance methods from the native code
- Caching jfieldID, jmethodID, and referencing data to improve performance
- Checking errors and handling exceptions in JNI
- Integrating assembly code in JNI
- Chapter 3: Build and Debug NDK Applications
- Introduction
- Building an Android NDK application at the command line
- Building an Android NDK application in Eclipse
- Building an Android NDK application for different ABIs
- Building Android NDK applications for different CPU features
- Debugging an Android NDK application with logging messages
- Debugging an Android NDK application with CheckJNI
- Debugging an Android NDK application with NDK GDB
- Debugging an Android NDK application with CGDB
- Debugging an Android NDK application in Eclipse
- Chapter 4: Android NDK OpenGL ES API
- Introduction
- Drawing 2D Graphics and applying transforms with the OpenGL ES 1.x API
- Drawing 3D graphics and lighting up the scene with the OpenGL ES 1.x API
- Mapping texture to 3D objects with the OpenGL ES 1.x API
- Drawing 3D graphics with the OpenGL ES 2.0 API
- Displaying graphics with EGL
- Chapter 5: Android Native Application API
- Introduction
- Creating a native activity with the native_activity.h interface
- Creating a native activity with the Android native app glue
- Managing native windows at Android NDK
- Detecting and handling input events at Android NDK
- Accessing sensors at Android NDK
- Managing assets at Android NDK
- Chapter 6: Android NDK Multithreading
- Introduction
- Creating and terminating native threads at Android NDK
- Synchronizing native threads with mutex at Android NDK
- Synchronizing native threads with conditional variables at Android NDK
- Synchronizing native threads with reader/writer locks at Android NDK
- Synchronizing native threads with semaphore at Android NDK
- Scheduling native threads at Android NDK
- Managing data for native threads at Android NDK
- Chapter 7: Other Android NDK API
- Introduction
- Programming with the jnigraphics library in Android NDK
- Programming with the dynamic linker library in Android NDK
- Programming with the zlib compression library in Android NDK
- Programming audio with the OpenSL ES audio library in Android NDK
- Programming with the OpenMAX AL multimedia library in Android NDK
- Chapter 8: Porting and Using the Existing Libraries with Android NDK
- Introduction
- Porting a library as a shared library module with the Android NDK build system
- Porting a library as a static library module with the Android NDK build system
- Porting a library with its existing build system using the Android NDK toolchain
- Using a library as a prebuilt library
- Using a library in multiple projects with import-module
- Porting a library that requires RTTI, exception, and STL support
- Chapter 9: Porting an Existing Application to Android with NDK
- Introduction
- Porting a command-line executable to Android with an NDK build system
- Porting a command-line executable to Android with an NDK standalone compiler
- Adding GUI to a ported Android app
- Using background threads at porting
Feipeng Liu
Code Downloads
Download the code and support files for this book.
Submit Errata
Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.
Sample chapters
You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.
- Develop Android apps in C/C++ without a single line of Java
- Program 2D/3D graphics with both OpenGL ES 1x and 2.0 in Android NDK
- Write multi-threaded Android apps in Android NDK
- Port existing C/C++ libraries and applications to Android with NDK
- Develop multimedia Android apps with Android NDK
Building Android applications would usually mean that you spend all of your time working in Java. There are however times when this is not the most efficient or best method for the application being built. This is where Android NDK comes in. Android NDK allows the developer to write in Native C/C++, giving you the power to reuse code and libraries and also, in most cases, increase the speed and efficiency of your application.
The "Android Native Development Kit Cookbook" will help you understand the development, building, and debugging of your native Android applications. We will discover and learn JNI programming and essential NDK APIs such as OpenGL ES, and the native application API. We will then explore the process of porting existing libraries and software to NDK. By the end of this book you will be able to build your own apps in NDK apps.
"Android Native Development Kit Cookbook" begins with basic recipes that will help you in the building and debugging of native apps, and JNI programming. The recipes cover various topics of application development with Android NDK such as OpenGL programming and Multimedia programming. We will begin with a simple recipe, Hello NDK, before moving on to cover advanced topics with recipes on OpenGL ES that focus on 2D and 3D graphics, as well as recipes that discuss working with NDK and external APIs. If you are looking for ways to make your application available in Android and take measures to boost your application’s performance, then this Cookbook is for you.
This book is written in a Cookbook style, beginning with recipes which focus on helping developers make their software/application available in Android.
Android developers who want to learn Android NDK programming, or develop multimedia and games in Android NDK will benefit from this book.

