在AndroidStudio中调用JNI

1. 新建Project

注意Build configuration language选择:Groovy DSL

2.选择Android模式,在build.gragle添加代码:

externalNativeBuild{
    cmake{
        cppFlags ""
    }
}
ndk{
    abiFilters 'arm64-v8a','armeabi-v7a'
}
externalNativeBuild{
    cmake{
        path "src/main/cpp/CMakeLists.txt"
    }
}

3. 选择Project模式,在main文件夹中,新建cpp文件夹,并新建CMakeLists.txt文件,内容如下:

cmake_minimum_required(VERSION 3.10)
add_library(JNILoader SHARED JNILoader.cpp)
find_library(log-lib log)

target_link_libraries(JNILoader ${log-lib})

新建JNILoader.cppp,内容如下:

//
// Created by afei on 2025/10/19.
//
#include <string>
#include <jni.h>

#ifdef __cplusplus
extern "C"{
#endif

JNIEXPORT jstring Java_com_example_ndk20251019_JNILoader_GetNativeString(JNIEnv *env,jobject thiz){
std::string labelString = "hello native";
return env->NewStringUTF(labelString.c_str());
}
JNIEXPORT jint  Java_com_example_ndk20251019_JNILoader_GetNativeNumber(JNIEnv *env, jobject thiz,int a,int b ){
return a + b;
}

#ifdef __cplusplus
}
#endif

4.在MainActivity中调用JNILoader类构建对象,就可以使用其方法了,结果如下:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值