android studio调用c++ so库

1.实现test.cpp,test.cpp中包含对c++ so库要使用方法的jni定义,比如

libpclient.so有个头文件webrtctest.h内容如下:int test();

test.cpp中对接口test()的jni定义如下:
 

#include <jni.h>
#include "webrtctest.h"  // 包含需要调用的头文件

extern "C" {

JNIEXPORT jint JNICALL
Java_com_example_mytest_MainActivity_test(JNIEnv *env, jobject /* this */) {
    // 调用 libpclient.a 中的 test() 函数
    return test();
}

} // extern "C"


2.实现cmakelists.txt,我实现的cmakelists.txt内容如下:

cmake_minimum_required(VERSION 3.18.1)

# 设置 C++ 标准为 C++20
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# 添加你的静态库目录
set(LIBS_DIR ${CMAKE_SOURCE_DIR}/jniLibs/arm64-v8a)
set(INHEAD_DIR ${CMAKE_SOURCE_DIR}/jniLibs)
add_definitions(
        -D__STDC_CONSTANT_MACROS
        -D__STDC_FORMAT_MACROS
        -D_FORTIFY_SOURCE=2
        -D_GNU_SOURCE
        -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE
        -DANDROID
        -DHAVE_SYS_UIO_H
        -DANDROID_NDK_VERSION_ROLL=r25c_1
        -DCR_CL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值