欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android Studio NDK开发-创建支持NDK的项目

程序员文章站 2022-03-26 21:47:16
...

    Android Studio开发NDK项目有两种方式,一种是给现有项目添加NDK支持,另一种是直接创建支持NDK的项目;

    此篇主要以案例形式讲解直接创建支持NDK的项目;

    1. 创建新项目是勾选“Include C++ support”,然后下一步选择项目SDK和Activity模版;

Android Studio NDK开发-创建支持NDK的项目

2. 选择C++支持的版本

Android Studio NDK开发-创建支持NDK的项目

3. Android Studio创建项目打开后,设置NDK的路径;

File->Project Structure ->SDK Location ->设置NDK路径

Android Studio NDK开发-创建支持NDK的项目

4.然后运行行程成功,表示项目已经支持NDK;

5. 添加native函数

在MainActivity中添加native函数

 public native int addNum(int num,int num2);public native int addNum(int num,int num2);

6. 使用javah自动生成MainActivity的头文件

7. 自动生成的cpp文件添加MainActivity头文件引用,并实现函数

#include <jni.h>
#include <string>
//引用头文件
#include "com_niubashaoye_demo_ndkdemo_MainActivity.h"
extern "C"
 JNIEXPORT jstring JNICALL
Java_com_niubashaoye_demo_ndkdemo_MainActivity_stringFromJNI(
        JNIEnv* env,
        jobject /* this */) {
    std::string hello = "Hello from C++";
    return env->NewStringUTF(hello.c_str());
}

//自己添加的
JNIEXPORT jint JNICALL Java_com_niubashaoye_demo_ndkdemo_MainActivity_addNum(
        JNIEnv* env,
        jobject obj,jint num,jint num2) {
   return num+num2;
}

 

8. MainActiviyt中调用定义的native函数

 

int num = addNum(12,45)

9. Build-ReBuild Project,如果成功就可以运行了;

  

 注:自动添加NDK支持的是使用CMake来构建库文件;