Android JNI 本地开发接口

前言

我们为什么要用JNI ——> 高效、扩展

高效:Native code效率高,数学运算,实时渲染的游戏上,音视频处理 (极品飞车,opengl,ffmpeg,文件压缩,图片处理…)

扩展:扩展了java 虚拟机的能力, 驱动开发  (wifi-hotspot)

JNI理解

JNI 简单的理解就是一个桥梁或者适配器,是C/C++语言和JAVA语言进行进行沟通的桥梁和中间件,相当于android开发中ListView和GridView的Adapter适配器,将数据和界面显示的view进行连接起来的桥梁。也可以理解为协议(接口),即C/C++与java语言相互沟通(传参,调用)的协议,在实际开发中也是通过本地开发接口(native interface)来实现相互沟通。


image

基础

JAVA 基本数据类型:byte、 short、 int、 long、 float、 double、 char、boolean

C 基本数据类型: 比java 少了 byte和boolean

]V[S_JS)2EJ)ZJ~C12[JYTJ  V%_}@12QP5@$5YH{Y8J1`@T

剩下的就是C基础的东西  指针这个比较重要…

推荐博客 http://www.cnblogs.com/mjios/category/459066.html

搭建JNI环境

android studio JNI 环境搭建

Eclipse SDK NDK  JNI 环境搭建

Eclipse SDK NDK Cygwin CDT JNI 环境搭建

mac os jni 环境配置:  http://www.lai18.com/content/2102571.html  http://www.cnblogs.com/lee0oo0/archive/2013/11/08/3414500.html

原文地址:https://www.cnblogs.com/yishujun/p/5463550.html