android使用JNI调用C,C++

简介: 版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/36190963 android环境下cdt的安装和NDK的配置也就不说了,有很多这样的博客文章进行讲解,现在我要说的就是通过JNI来调用C函数和C++函数。
版权声明:您好,转载请留下本人博客的地址,谢谢 https://blog.csdn.net/hongbochen1223/article/details/36190963

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);

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

目录
相关文章
|
4天前
|
Android开发
Android JNI与CAN通信遇到的问题总结
Android JNI与CAN通信遇到的问题总结
26 1
|
4天前
|
Android开发
Android JNI 报错(signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr )
Android JNI 报错(signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr )
26 1
|
4月前
|
Java 开发工具 Android开发
OpenCV(一):Android studio jni配置OpenCV(亲测有效,保姆级)
OpenCV(一):Android studio jni配置OpenCV(亲测有效,保姆级)
164 0
|
1月前
|
Android开发
[Android jni] Bitmap与Mat对象的相互转换
[Android jni] Bitmap与Mat对象的相互转换
51 0
|
7月前
|
Java Android开发 C++
Android中的JNI开发,你了解多少?
Android中的JNI开发,你了解多少?
66 0
|
8月前
|
Java Android开发
Android JNI开发从0到1,java调C,C调Java,保姆级教程详解
Android JNI开发从0到1,java调C,C调Java,保姆级教程详解
64 1
|
4月前
|
算法 Java 开发工具
Android 编译C++
Android 编译C++
|
4月前
|
Java 开发工具 Android开发
[Android]JNI的基础知识
[Android]JNI的基础知识
47 0
[Android]JNI的基础知识
|
4月前
|
算法 Java 数据安全/隐私保护
Android App开发之利用JNI实现加密和解密操作实战(附源码 简单易懂)
Android App开发之利用JNI实现加密和解密操作实战(附源码 简单易懂)
76 0
|
4月前
|
XML Java API
Android App开发之创建JNI接口获取CPU指令集讲解及实战(附源码 简单易懂)
Android App开发之创建JNI接口获取CPU指令集讲解及实战(附源码 简单易懂)
42 0