一、JNI与NDK介绍
JNI
定义:Java Native Interface,即 Java本地接口
作用:使得Java 与 本地其他类型语言(如C、C++)交互,即在 Java代码 里调用 C、C++等语言的代码 或 C、C++代码调用 Java 代码。
注意:JNI是 Java 调用 Native 语言的一种特性,JNI 是属于 Java 的,与 Android 无直接关系。
NDK
定义:Native Development Kit,是 Android的一个工具开发包。
作用:快速开发C、 C++的动态库,并自动将so和应用一起打包成 APK,即可通过 NDK在 Android中 使用 JNI与本地代码(如C、C++)交互。
注意:NDK是属于 Android 的,与Java并无直接关系。
二、实现步骤
1、配置 Android NDK环境,并关联 Andorid Studio项目 与 NDK。
2、创建本地代码文件,即需要在Android项目中调用的本地代码文件
如采用 C++ test.cpp
# include <jni.h>
# include <stdio.h>
extern "C"
{
JNIEXPORT jstring JNICALL Java_scut_carson_1ho_ndk_1demo_MainActivity_getFromJNI(JNIEnv *env,