首页 > 移动平台 > 详细

Linux下安卓ndk混合编译调用so方法——QuickStart学习

时间:2016-01-26 15:14:48      阅读:204      评论:0      收藏:0      [点我收藏+]

转自:http://www.52pojie.cn/thread-313869-1-1.html

 

x1:新建立一个安卓工程




技术分享 


0x2:编写调用so代码和方法定义

在MainActivity.java同目录下创建一个JniGg.java文件,用于调用so


<ignore_js_op>技术分享 



0x3:生成文件头.h文件

在这个目录可以看到我们编写好并且已经编译的class文件,eclipse是自动编译的。

<ignore_js_op>技术分享 


一切正常编译,那么现在我们回到工程根目录下:

<ignore_js_op>技术分享 



然后在命令行切换到此目录:

<ignore_js_op>技术分享 



现在我们使用下面的命令:javah -classpath bin/classes -d jni com.ggndktest1.JniGg

<ignore_js_op>技术分享 


不报错,并且成功编译出.h文件,才算成功的。

上面需要注意的是那个bin/classes,因为我的电脑上编译完的classes目录是这个样子的,参照上文那个文件目录的截图图片,个别电脑上不需要/classes。然后在Eclipse,右击工程,进行刷新,可以看到如下截图:



技术分享 

0x4:编写c代码


技术分享 


在jni目录下新建file,gg-jni.c自己看看代码,也就知道啥意思了


技术分享 

然后就是Android.mk文件的编写了


技术分享 


0x5:生成so文件


技术分享 


切换到工程根目录,然后直接ndk-build即可。这里需要注意,ndk-build需要配置环境变量,自行搜索配置方法即可。


0x6:android调用代码


技术分享 


新建一个TextView,然后显示so里面的字符串。然后运行我们的测试代码:


技术分享 












相关附件和文档:
http://pan.baidu.com/s/1pJ2Y047

Linux下安卓ndk混合编译调用so方法——QuickStart学习

原文:http://www.cnblogs.com/zl1991/p/5160306.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!