Call : (+91) 968636 4243
Mail : info@EncartaLabs.com
EncartaLabs

Android NDK

( Duration: 4 Days )

This Android NDK training course is intended to teach about Android NDK, which is a toolset that allows developers to put into practice a part of or an entire Android application in a native language: C++, C, and assembly. You will learn to debug an Android NDK application with logging messages and CheckJNI. This course covers concepts such as writing essential JNI code, calling external libraries in android, working with CPU features, multithreading. Main motivation for native code is performance and the re-use of legacy code. This course is intended for developers who want to write native code in android

By attending Android NDK workshop, delegates will learn:

  • Android NDK OpenGL ES API
  • Android NDK
  • Porting and Using the Existing Libraries with Android NDK
  • NDK
  • Java Native Interface
  • Android Native Application API
  • Other Android NDK API
  • Android NDK Multithreading
  • Build and Debug NDK Applications
  • Porting an Existing Application to Android with NDK

The Android NDK class is ideal for:

  • Mobile App Developers

COURSE AGENDA

1

NDK

  • Introduction
  • Setting up an Android NDK development environment in Windows
  • Updating Android NDK
  • Writing a Hello NDK
2

Java Native Interface

  • 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
3

Build and Debug NDK Applications

  • Building an Android NDK application at the command line
  • Building an Android NDK application in Eclipse
  • Building and 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
4

Android NDK OpenGL ES API

  • Drawing 2D Graphics and applying transforms with the OpenGL ES API
  • Drawing 3D Graphics and lighting up the scene with the OpenGL ES API
  • Mapping texture to 3D objects with the OpenGL ES API
  • Drawing 3D graphics with the OpenGL ES API
  • Displaying graphics with EGL
5

Android Native Application API

  • 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
6

Android NDK Multithreading

  • 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
7

Other Android NDK API

  • 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
8

Porting and Using the Existing Libraries with Android NDK

  • 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 RITTI, exception, and STL support
9

Porting an Existing Application to Android with NDK

  • Porting a command-line executable to Android with an NDK build system
  • Porting a command-line executable to Android with an NDK
  • Standalone computer
  • Adding GUI to a ported Android app
  • Using background threads at porting

Encarta Labs Advantage

  • One Stop Corporate Training Solution Providers for over 6,000 various courses on a variety of subjects
  • All courses are delivered by Industry Veterans
  • Get jumpstarted from newbie to production ready in a matter of few days
  • Trained more than 50,000 Corporate executives across the Globe
  • All our trainings are conducted in workshop mode with more focus on hands-on sessions

View our other course offerings by visiting https://www.encartalabs.com/course-catalogue-all.php

Contact us for delivering this course as a public/open-house workshop/online training for a group of 10+ candidates.

Top
Notice
X