Skip to Main Content
Programming Android, 2nd Edition
book

Programming Android, 2nd Edition

by Zigurd Mednieks, Laird Dornin, G. Blake Meike, Masumi Nakamura
September 2012
Intermediate to advanced content levelIntermediate to advanced
566 pages
16h 52m
English
O'Reilly Media, Inc.
Content preview from Programming Android, 2nd Edition

Chapter 19. The Android Native Development Kit (NDK)

Java Native Interface (JNI) is a part of the Java standard that enables developers to write methods in languages that are compiled to native code, such as C and C++, and call those methods from Java code. JNI is also what connects the Java runtime environment to the underlying operating system. For details on JNI and how it can be used with Java code, see the Java Native Interface Specification.

To make things as easy as possible for the Java developer, JNI lets a native method use Java objects in the same way that Java code uses these objects. Within the native method, Java objects can be created and used. This ability to access and use Java objects enables the native method to use other Java objects through references passed to it from a Java application.

JNI is especially useful when you want to use platform-specific features or take advantage of hardware in the platform that can’t be accessed through Android APIs, such as accessing faster numerical computation by taking advantage of FPU instructions. Graphics-intensive code that makes extensive use of the OpenGL API is another place to use JNI.

This chapter covers JNI basics for programmers using the Android Native Development Kit (NDK). The NDK makes it more convenient to compile native code that can be used with Android programs.

When deciding whether you should develop in native code, think about your requirements and consider whether the Android SDK already provides the functionality ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning Android, 2nd Edition

Learning Android, 2nd Edition

Marko Gargenta, Masumi Nakamura
Learning Embedded Android N Programming

Learning Embedded Android N Programming

Ivan Morgillo, Stefano Viola

Publisher Resources

ISBN: 9781449332921Errata PageSupplemental Content