NDK入门

1、安装NDK开发工具:进入Android Studio->Preferences->Android SDK->SDK Tools,找到NDK安装:
这里写图片描述

2、新建project,在gradle.properties中加入

android.useDeprecatedNdk=true

在app中的build.gradle的defaultConfig中加入

ndk {
            moduleName "JNISample"
            stl "stlport_static"
            ldLibs "log"
        }

3、创建JNIUtils类,声明一个native方法:

public native int add(int a,int b);

build工程,生成build/intermediates/classes/debug文件夹
在Terminal中cd到debug文件夹,执行命令:

javah -jni com.yjs.ndkdemo.JNIUtils  

会在dubug文件夹下生成c++头文件:
这里写图片描述
内容如下:

/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class com_yjs_ndkdemo_JNIUtils */

#ifndef _Included_com_yjs_ndkdemo_JNIUtils
#define _Included_com_yjs_ndkdemo_JNIUtils
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     com_yjs_ndkdemo_JNIUtils
 * Method:    add
 * Signature: (II)I
 */
JNIEXPORT jint JNICALL Java_com_yjs_ndkdemo_JNIUtils_add
  (JNIEnv *, jobject, jint, jint);

4、在main文件夹下创建一个jni文件夹,并将上一步生成的头文件拷贝到jni中,
然后在jni中创建.cpp文件:
这里写图片描述

在其中实现头文件的方法:

JNIEXPORT jint JNICALL Java_com_yjs_ndkdemo_JNIUtils_add(JNIEnv *env, jobject obj, jint a, jint b) {
    return (a + b);
}

5、调用native方法:
首先在声明native方法的类中加入

 static {
        System.loadLibrary("JNISample");
    }

其中”JNISample”和你在app的build.gradle中声明的ndk的moduleName一致。
之后便可以调用native方法:

 JNIUtils jniUtils = new JNIUtils();
 Log.d("JNIUtils", String.valueOf(jniUtils.add(1,2)));
C++本科毕业设计-ROS机械臂上位机源码(下载即用),个人经导师指导并认可通过的高分设计项目,评审分98分,项目中的源码都是经过本地编译过可运行的,都经过严格调试,确保可以运行!主要针对计算机相关专业的正在做大作业、毕业设计的学生和需要项目实战练习的学习者,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源码(下载即用)C++本科毕业设计-ROS机械臂上位机源
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值