Overview:
Android Internals focuses on Android NDK and Android IDL APIs for giving you clean access to the underlying hardware and services with future compatibility in mind. You will learn how to build custom images and hack the platform.
Audience:
This Android Internals course is for developers who want to dig deeper than the standard Android SDK. It is for those who want to hack the system a bit in order to add system services and hardware support for non-standard components.
Pre-Requisite:
To get the most benefit from this class you must have a basic understanding of C and Java. Stronger proficiency with C, C++, Java is recommended.
Course Curriculum
Android Stack | |||
Android Linux Kernel Layer Details | 00:00:00 | ||
Android User-Space Native Layer Details | 00:00:00 | ||
Android Application Framework Layer Details | 00:00:00 | ||
Android Applications Layer Details | 00:00:00 | ||
Android Native Development Kit (NDK) | |||
What is in NDK? Details | 00:00:00 | ||
Why NDK? Details | 00:00:00 | ||
Java Native Interface (JNI) Details | 00:00:00 | ||
Using NDK Details | 00:00:00 | ||
Fibonacci Example Overview Details | 00:00:00 | ||
NDK’s Stable APIs Details | 00:00:00 | ||
Android Binder Inter Process Communication (IPC) with AIDL | |||
Why IPC? Details | 00:00:00 | ||
What is Binder? Details | 00:00:00 | ||
What is AIDL? Details | 00:00:00 | ||
Building a Binder-based Service and Client Details | 00:00:00 | ||
Building a Binder-based Service and Client Details | 00:00:00 | ||
FibonacciCommon – Define AIDL Interface and Custom Types Details | 00:00:00 | ||
FibonacciService – Implement AIDL Interface and Expose It To Our Clients Details | 00:00:00 | ||
Implement AIDL Interface Details | 00:00:00 | ||
Expose our AIDL-defined Service Implementation to Clients Details | 00:00:00 | ||
FibonacciClient – Using AIDL-defined Binder-based Services Details | 00:00:00 | ||
Async-IPC via Binder Details | 00:00:00 | ||
Android Security | |||
Overview Details | 00:00:00 | ||
Android Security Architecture Details | 00:00:00 | ||
Application Signing Details | 00:00:00 | ||
User IDs Details | 00:00:00 | ||
File Access Details | 00:00:00 | ||
Using Permissions Details | 00:00:00 | ||
Permission Enforcement Details | 00:00:00 | ||
Declaring Custom Permissions Details | 00:00:00 | ||
Requiring Permissions Details | 00:00:00 | ||
Enforcing Permissions Dynamically Details | 00:00:00 | ||
ContentProvider URI Permissions Details | 00:00:00 | ||
Public vs. Private Components Details | 00:00:00 | ||
Intent Broadcast Permissions Details | 00:00:00 | ||
Pending Intents Details | 00:00:00 | ||
Lab Details | 00:00:00 | ||
Encryption Details | 00:00:00 | ||
Rooting an Android device Details | 00:00:00 | ||
Security of Memory Details | 00:00:00 | ||
Tap-Jacking on Android Details | 00:00:00 | ||
Android Device Administration Details | 00:00:00 | ||
Anti-malware Details | 00:00:00 | ||
Other Security Concerns Details | 00:00:00 | ||
Building Android From Source | |||
Why Build Android From Source? Details | 00:00:00 | ||
Setting up the Build Environment Details | 00:00:00 | ||
Downloading the Source Tree Details | 00:00:00 | ||
Android Source Code Structure Details | 00:00:00 | ||
Android Build System Details | 00:00:00 | ||
Initializing the Build Environment Details | 00:00:00 | ||
Choosing the Build Target Details | 00:00:00 | ||
Compiling Android Details | 00:00:00 | ||
Examining the Built Images Details | 00:00:00 | ||
Running Custom Android Build on Emulator Details | 00:00:00 | ||
Running Custom Android Build on Real Hardware Details | 00:00:00 | ||
Building the Linux Kernel Details | 00:00:00 | ||
Getting the Kernel Details | 00:00:00 | ||
Android Startup | |||
Bootloading the Kernel Details | 00:00:00 | ||
Android’s init Startup Details | 00:00:00 | ||
Zygote Startup Details | 00:00:00 | ||
System Server Startup Details | 00:00:00 | ||
Android Services | |||
Vibrator Details | 00:00:00 | ||
Power Service Details | 00:00:00 | ||
WiFi Service Details | 00:00:00 | ||
Telephony Details | 00:00:00 | ||
Location Service Details | 00:00:00 | ||
Audio Service Details | 00:00:00 | ||
Android Media Framework Details | 00:00:00 | ||
Surface Flinger Details | 00:00:00 | ||
Camera Service Details | 00:00:00 | ||
Customizing Android | |||
Setting up the Directory Structure Details | 00:00:00 | ||
Registering our Device with Android’s Build System Details | 00:00:00 | ||
Adding the Makefile Plumbing for our Device Details | 00:00:00 | ||
Adding a Custom Kernel to our Device Details | 00:00:00 | ||
Adding a Custom Native Library and Executable to our Device Details | 00:00:00 | ||
Using our Native Library via a Custom Daemon Details | 00:00:00 | ||
Exposing our Native Library via Java (i.e. JNI) Details | 00:00:00 | ||
Exposing our Custom Library via a Custom IPC/Binder Service Details | 00:00:00 | ||
Building a Custom App Using a Custom Service Manager Details | 00:00:00 | ||
Android USB Support Details | 00:00:00 |
Course Reviews
No Reviews found for this course.
0 STUDENTS ENROLLED