Android通过JNI与C/C++相互沟通之于软件和硬件整合的重要意义 |
- JNI原理;
- JNI架构;
- 虚拟机处理JNI的流程;
- JNI中的设计模式:Fa?ade Pattern;
- JNI是如何帮助实现软硬整合的;
|
Android中Java呼叫C代码 |
- 第一个JNI程序;
- 第一个JNI程序运行机制和流程剖析;
|
使用JNI的优势和弊端 |
- 使用JNI的优势
- 使用JNI的弊端
- 如何最恰当的使用JNI
|
C代码访问Java代码 |
- C访问Java代码实战
- C访问Java代码运行的机制剖析
|
JNIEnv指针和jobject深入剖析 |
- JNIEnv指针的作用;
- JNIEnv 设计思路以及这种设计的优势;
- 是什么时候获得JNIEnv指针的,在没有显示JNIEnv指针的环境中的代码中如何获得JNIEnv指针?
- jobject和Java继承结构的关系
- jobject的在开发中的作用
|
C进一步访问的Java |
- jclass的取得
- 访问Java中的属性和方法
- sign签名
- 使用javap命令产生签名
|
Java字符串与C/C++的字符串 |
- GetStringChars、GetStringUTFChars
- GetStringCritical
- GetStringRegion与GetStringUTFRegion
- NewString、NewStringUTF
- GetStringLength、GetStringUTFLength
|
处理数组 |
- 基本类型的数组
- 对象类型(Object[])的数组,
- 能通用于两种不同类型数组的函数: GetArrayLength(jarray
array)
|
处理数组 |
- 全局引用(Global Reference)
- 局部引用(Local Reference)
- 弱全局引用(Weak Global Reference)
|
处理缓存 |
- Caching at the Point of Use
- (Caching at the Defining Class’s Initializer
|
JNI异常 |
|
JNI多线程编程 |
- Navtive C/C++的线程模式和安全以及Android VM的线程模式
- Java中的多线程调用C/C++代码;
- C/C++中的多线程调用Java代码
|
Android中的NDK编程 |
- NDK与JNI关系揭秘
- NDK开发环境的搭建
- NDK开发的流程
- 第一个NDK程序
|
NDK编程实战 |
- 采用NDK方式开发出的程序安装和运行的内幕
- NDK中的Java与C/C++相互调用
|
NDK多线程实战 |
- NDK中的多线程编程
- 关于Android软件开发的标准化和可替换性揭秘
|