求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
 
 
 
全部课程 | 技术学院 | 管理学院 | 嵌入式学院 | 在线学院  
成功案例   品质保证  电话 English
追随技术信仰

随时听讲座
每天看新闻
 
   
成功案例
知名某轨 “ReWorks中
塞默菲舍 《嵌入式软件架构设
某水声通 嵌入式Linux应
广汽研究 ARM处理器体系架
联合汽微 嵌入式软件架构设计
某全球知 Linux内核和系
广汽研究 嵌入式软件架构设计

相关课程  
UML +RoseRealtime+嵌入式
C++嵌入式系统开发
嵌入式白盒测试
手机软件测试
嵌入式软件测试
嵌入式操作系统VxWorks
 

JNI与NDK开发课程    
 
Karl
多部畅销书作者,致力移动互联网技术研究与应用:HTML5和Android 。
报名课程       
时间地点: 北京 上海 深圳 根据报名开班
课程费用: 5000元/人 详见 公开课学习手册
企业内训: 可以根据企业需求,定制内训,详见 内训学习手册
 

通过本课程,您可以深入理解如何通过JNI机制使得各种编程语言的程序直接可以随心所欲的互相调用,实现紧密的程序复用和集成。课程将关注:

  • JNI的架构模式
  • Java呼叫C/C++
  • C/C+呼叫Java
培训目标
  • 通过JNI机制使用Java随心所欲的调用C/C++代码;
  • 通过JNI机制使用C随心所欲的调用Java代码;
  • 通过JNI机制使用C+随心所欲的调用Java代码;
  • 精通NDK编程;
培训对象:Android开发工程师
学员基础:具备一定的C/C++、Java基础,了解设计模式更佳
授课方式: 定制课程 + 案例讲解 + 小组讨论,60%案例讲解,40%实践演练
培训内容: 2天
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软件开发的标准化和可替换性揭秘
 
其他人还看了课程
企业战略与变革管理  
软件架构设计方法  
红帽认证  
数据分析与挖掘  
定制内训




最新活动计划
C++高级编程 12-25 [线上]
白盒测试技术与工具实践 12-24[线上]
LLM大模型应用与项目构建 12-26[特惠]
需求分析最佳实践与沙盘演练 1-6[线上]
SysML建模专家 1-16[北京]
UAF架构体系与实践 1-22[北京]