`
hongbochen1223
  • 浏览: 43855 次
文章分类
社区版块
存档分类
最新评论

android使用JNI调用C,C++

 
阅读更多

android环境下cdt的安装和NDK的配置也就不说了,有很多这样的博客文章进行讲解,现在我要说的就是通过JNI来调用C函数和C++函数。

首先,新建普通的android程序。我们姑且命名为JNITest

新建完成之后,即为普通的android项目

现在就开始我们的JNI之旅:

(一)、JNI调用C函数

1:在项目目录下新建一个jni文件夹如图

2:在jni文件夹下新建一个.c文件,姑且命名为hello.c

3:键入以下代码(后面会有讲解)

#include <jni.h>

jstring Java_com_example_jnitest_MainActivity_HelloJni(JNIEnv *env,jobject obj)

{

return (*env)->NewStringUTF(env,"Hello World!!");

}


备注:

(1)、头文件 #include <jni.h>

头文件位置定义在android-ndk-r9c\platforms\android-5\arch-arm\usr\include目录下

含有以下方法:

jstring (*NewString)(JNIEnv*, const jchar*, jsize);

jsize (*GetStringLength)(JNIEnv*, jstring);

const jchar* (*GetStringChars)(JNIEnv*, jstring, jboolean*);

void (*ReleaseStringChars)(JNIEnv*, jstring, const jchar*);

jstring (*NewStringUTF)(JNIEnv*, const char*);

jsize (*GetStringUTFLength)(JNIEnv*, jstring);

(由于文字限制,下一篇接着讲解)

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics