Android NDK
The Android NDK class targets those who want to know more about Android internals, about the API available for developers and about creating fast and powerful apps using the Native Development Kit (NDK).
Announcements
| Day | Time | Location |
Lecture | Tuesday | 17-18 | EG306 |
Lab | Tuesday | 18-20 | EG306 |
Project | Tuesday | 20-21 | EG306 |
Curriculum
Android Technology
Android Platform
Description: Development environment on Android, overview of the Android SDK
Practical part: Android SDK development
Android internals
Description: In-depth view of the Android lower components: Linux kernel, Dalvik, Binder, Android framework, Managers
Practical part: Android NDK installation, tools and building simple Apps
C, Bionic and Low-Level Libraries
Description: Low-level libraries in use by NDK, Bionic - the C standard library in Android
Practical part: Android NDK simple app development
NDK Integration (JNI)
Description: Integrating NDK into Android SDK apps, Standard JNI, Android JNI
Practical part: NDK Apps/libraries called from Java or Java called from C/C++
Semester project starts: select topic and start development
Debugging and Profiling
OpenGL on Android
Description: OpenGL, OpenGL ES, accessing GPU features with NDK
Practical part: Create GPU-using apps
Native Activity
NDK vs. Renderscript
Description: What is Renderscript, how does it compare to
Practical part: Create Renderscript apps, compare against NDK-based apps
NDK Optimization and Portability
Description: Porting NDK apps across hardware platforms and Android versions
Practical part: Run/port NDK apps on different platforms (x86, ARM LE/BE), native executables
Resources
People Involved