
android studio 使用ndk编译c++库给jni使用
发布日期:2021-05-04 15:33:27
浏览次数:26
分类:精选文章
本文共 1187 字,大约阅读时间需要 3 分钟。
参考
代码例子
查看sdk版本
targetSdkVersion 23
这个程序我一直没有编译过,很是郁闷,主要是因为gradle版本的问题,但是不知道要怎么改。尝试了很多办法都不行。暂时不折腾了。有编译成功,运行ok的小伙伴留个言交流下,谢谢!qq:410587208
参考
Android Studio NDK开发案例一 JNI开发入门
安卓studio jni调用第三方静态库CMakeLists配置
add_library( mytaglib #这是我即将调用第三方静态库,不需要写完整的静态库名。
STATIC IMPORTED ) set_target_properties( mytaglib PROPERTIES IMPORTED_LOCATION ${CMAKE_SOURCE_DIR}/libs/x86/libmytaglib.a ) #libmytaglib.a是完整的库名。 target_link_libraries( mediafile-lib #这是我自己创建的动态库。 mytaglib #z #有人说要加个z库。其实不加也可以编译通过,并且能运行;加了也没有报错。${log-lib} ) #这是NDK库文件
build.gradle(app)里面也有一项必要的配置: externalNativeBuild { cmake { arguments '-DANDROID_PLATFORM=android-23', '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=gnustl_static' } } build.gradle(app)的配置里面少了上面这一段,就会导致编译不通过(目前我发现上面这一段仅仅是针对调用静态库的时候需要用到)。
最终成功了,需要在cmakelist.txt里加入
#编译dlibadd_library( dlib SHARED ${pathToDlib}/dlib/all/source.cpp)add_library( liveness SHARED ${SRCS})target_link_libraries( liveness log jnigraphics #链接动态库 使用完整路径 ${PROJECT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libdlib.so)
Android NDK 开发之 CMake 必知必会
ndk之CMake
Android下使用CMake链接已有静态库.a生成新的静态库.a,以及动态库.so链接静态库生成新的动态库.so
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月11日 00时22分59秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
HP服务器设置iLO
2019-03-05
从头实现一个WPF条形图
2019-03-05
使用QT实现一个简单的登陆对话框(纯代码实现C++)
2019-03-05
QT :warning LNK4042: 对象被多次指定;已忽略多余的指定
2019-03-05
GLFW 源码 下载-编译-使用/GLAD配置
2019-03-05
针对单个网站的渗透思路
2019-03-05
Typescript 学习笔记六:接口
2019-03-05
02、MySQL—数据库基本操作
2019-03-05
OpenJDK1.8.0 源码解析————HashMap的实现(一)
2019-03-05
MySQL-时区导致的时间前后端不一致
2019-03-05
2021-04-05阅读小笔记:局部性原理
2021-05-08
go语言简单介绍,增强了解
2021-05-08
python file文件操作--内置对象open
2021-05-08
架构师入门:搭建基本的Eureka架构(从项目里抽取)
2021-05-08
MongoDB 快速扫盲贴
2021-05-08
EXTJS4.2——10.Tab+Iframe
2021-05-08
one + two = 3
2021-05-08
sctf_2019_easy_heap
2021-05-09
PyQt5之音乐播放器
2021-05-09
Redis进阶实践之十八 使用管道模式提高Redis查询的速度
2021-05-09