跟着鬼哥学so改动,一,准备篇

时间:2022-10-07 13:47:48

图/文 听鬼哥说故事

闲话少说,so的改动,重要性大家都知道,这里从头编写so文件,分析so文件,改动so文件,打算做一个系列的教程,当然,主要是看时间同意。

android的sdk配置以及ndk环境下载,请同学们自行google就可以。

FQ也不会,工具也不会用,搜索也懒得搞,请直接略过本文就可以。

0x1:新建立一个安卓project



跟着鬼哥学so改动,一,准备篇

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





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

跟着鬼哥学so改动,一,准备篇



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



在这个文件夹能够看到我们编写好而且已经编译的class文件,eclipse是自己主动编译的。

跟着鬼哥学so改动,一,准备篇

一切正常编译,那么如今我们回到project根文件夹下:

跟着鬼哥学so改动,一,准备篇

然后在命令行切换到此文件夹:

跟着鬼哥学so改动,一,准备篇

如今我们使用以下的命令:javah -classpath bin/classes -d jni com.ggndktest1.JniGg



跟着鬼哥学so改动,一,准备篇

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

上面须要注意的是那个bin/classes,由于我的电脑上编译完的classes文件夹是这个样子的,參照上文那个文件文件夹的截图图片,个别电脑上不须要/classes。然后在Eclipse,右击project,进行刷新,能够看到例如以下截图:



跟着鬼哥学so改动,一,准备篇

0x4:编写c代码



跟着鬼哥学so改动,一,准备篇

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

跟着鬼哥学so改动,一,准备篇

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

跟着鬼哥学so改动,一,准备篇

0x5:生成so文件



跟着鬼哥学so改动,一,准备篇

切换到project根文件夹,然后直接ndk-build就可以。这里须要注意,ndk-build须要配置环境变量,自行搜索配置方法就可以。

0x6:android调用代码

跟着鬼哥学so改动,一,准备篇

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



跟着鬼哥学so改动,一,准备篇

相关附件和文档:

http://pan.baidu.com/s/1pJ2Y047

文章同一时候也交由www.pd521.com 首发,转载请注明出处。