android NDK 开发步骤

NDK开发通常分为一下几个步骤:(默认你已经安装好了NDK和android开发环境)java

1.建立一个项目android

2.建立JNI目录windows

3.编写nativejava层方法ui

4.生成JNI头文件spa

  (1)编写javaNative代码
  (2)执行命令javah
  (3)添加android.jar包到环境变量.net

5.建立一个.c文件导入相应的头文件3d

6.在jni目录下添加mk文件。orm

7.最后在项目路径下执行ndk-build命令。blog

8.最后运行代码就能够看到结果了。开发

下面是详细步骤和截图:

建立一个android项目就不说了。

而后咱们声明一个native方法

下面咱们在项目下面添加一个jni目录

 

而后进入cmd控制台进入当前工做的目录下面:

而后执行javah命令用来生成.h文件

(其中,D:\android\android_sdk_windows\platforms\android-19\android.jar,
是android sdk目录下的目录文件,为了简单,能够把android.jar文件目录添加到path路径下;
最后com.example.hellondk_1.MainActivity是包名加类名)

刷新项目能够看到jni目录下多了一个.h文件

而后咱们建立一个.c文件用来实现.h文件用定义的方法。

建立一个.c文件导入相应的头文件
(
如:建立一个hello.c文件
#include<stdio.h>
#include<stdlib.h>
#include"com_example_hellondk_1_MainActivity.h"

JNIEXPORT jstring JNICALL Java_com_example_hellondk_11_MainActivity_getStringFromC
(JNIEnv *env, jclass jclass){

return (*env)->NewStringUTF(env, "Hello from C !....");
}
其中实现了头文件中的方法Java_com_example_hellondk_11_MainActivity_getStringFromC(JNIEnv *, jclass);
)

 

在jni目录下添加mk文件。

(这个能够导入ndk的实例下面的mk文件而后作修改就能够了)以下
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := hello
LOCAL_SRC_FILES := hello.c

include $(BUILD_SHARED_LIBRARY)
其中,
LOCAL_MODULE 表示编译生成的so叫什么名字
LOCAL_SRC_FILES 表示要编译的.c文件是哪一个

最后在项目路径下执行ndk-build命令。

执行完以后对项目进行刷新能够看到项目下面多了一个obj目录里面多了一个.so文件。
而后在java文件中添加静态代码块。添加.so文件。

 

最后运行代码就能够看到结果了。

这里若是你用的是genymotion模拟器,那么须要对genymotion进行配置要安装一个genymotion arm translation,下载好以后直接拖拽就能够安装了。

下载地址:

http://download.csdn.net/detail/u014132820/9044875

相关文章
相关标签/搜索