Android NDk 开发简易教程

作者:超级管理员更新时间:2016-09-29 15:27:57来源:未知点击:15642
Android代码调用优秀的C++代码,高效的实现需要的功能。 总体的思路: 1.完成自己的Android代码;2.将c++代码生成.so;3.将.so库放在Android的libs文件夹当中;4.A
Android代码调用 优秀的C++代码,高效的实现需要的功能。
 
总体的思路:
 
1. 完成 自己的Android代码;
2. 将c++代码生成 .so;
3. 将.so 库放在Android 的libs文件夹当中;
4. Android代码当中定义待调用接口函数,并导入库。
 
具体的操作:
1. 完成 自己的Android代码;
   这一部分就是Android开发的事情了,不是我的重点和擅长,相信是你的擅长;
2. 将c++代码生成 .so;
  我假设你是有你需要的功能的c++代码的。(没有你还 移植个屁啊O(∩_∩)O哈哈~)
  2.1  c++代码修改
    这一部分的工作,三个重要的点:
  1,头文件加入: #include < jni.h> jni.h>
  2,加入 extern“c”,处理C++代码;
  3,输出的接口函数命名一定要规范;Java_包_类_方法 (JNIEnv *, jclass,);
  例子:
这里只是头文件,具体的实现你可以在CPP文件里面实现;
  2.2 Android.mk 文件的修改
  将刚才的源文件加进去,依赖的库加进去。(一般来说还需要Application.mk的,但是几乎都是一样的,复制过去就好)
 例子:
 
  2.3 ndk-build编译
     将以上4个文件放在 jni文件夹里面,然后准备开始编译.so文件。
     只要你安装的版本在r7 以上就可以不需要其他的插件了。非常的方便,配置好环境变量,从CMD进入到 jni 文件或是它的上一级文件夹,执行ndk-build命令,开始编译。
     更加详细的参考:http://blog.csdn.net/ikerpeng/article/details/42643223
3. 将.so 库放在Android 的libs文件夹当中;
   将刚才编译生成 的lib文件下下面的.so文件拷贝出来,连带所在的文件夹(这个是必须的),放到你的Android工程里面的libs文件夹;
4. Android代码当中定义待调用接口函数,并导入库。
  定义好接口函数,这个函数名一定和C++中的最后那个名字一样,然后 System.loadLibrary();导入;
  就可以在Android的代码当中代用这个函数了。
例子:

推荐阅读

热门内容

列属性
1.3.3 列属性作用在报表每列上的属性...

全局属性
1.3.1 全局属性作用在整个报表上的属...

运算区域的设置
1.2.6 运算区域的设置以上介绍的五个...

运算函数
1.2 运算函数1.2.1 sum()函...

win7中java环境变量设置
一、下载java官方地址:http://...

怎么在eclipse中安装properties插件
资源文件即.properties文件是常...

eclipse的java反编译插件Jadclipse介绍与安装
jadclips插件网站:http://...

Tomcat限制用域名访问,拒绝ip访问
今天跑了几个月的项目被要求不能用ip访问...

域名直接访问到项目
如果你目前状况是这样的有一个服务器已经部...

Tomcat域名或IP地址访问方式配置方法
1、配置www.***.com域名方式访...