精品教程NDK基础例子,编译.SO文件

 

下载源码

 

1. 创建Android项目

2.定义native接口

3. 根据JNI.java文件生成相应的.h文件

     cmd到项目的bin\classes目录,然后执行 javah –classpath . –jni kun.ndk.plus.JniExample

     解析:–classpath--为装载类的路径  .为当前目录  -jni生成JNI样式的头文件

    

4. 根据.h文件实现相应的.c文件

 (1) 新建jni目录, 将.h文件放到jni目录下
(2)根据.h文件中的名字,建立对应的.c文件

  

 根据Class:的注释值来命名.c文件

 (3)完善.c文件

   

  1. 5.  制作.mk文件

(1) 在jni目录下的apps目录下新建Android.mk文件

输入以下内容:

6.NDk编译项目,生成库文件

打开cygwin,进入到Ndk_Plus目录中,然后执行$NDK/ndk-build目录

此命令成功后,将在项目的lib/armeabi目录下生成libndk-plus.so文件

到此整个项目目录如下:

 

7.库文件的调用

在调用的java文件中加入如下代码进行加载:

static {

2

 System.loadLibrary(ndk-plus);

3

 }

   

       

 

加入对定义的native函数的调用:

TextView txt_view = (TextView)findViewById(R.id.txt_view);

 int value = plus(10,20);

 txt_view.setText("Value: "+value);

8.运行此程序

  

 

原文地址:https://www.cnblogs.com/love1025/p/2756983.html