Android ndk 使用第三方so和头文件编译
为什么80%的码农都做不了架构师?>>>
我们在使用ndk的时候,有时候可能会使用到第三放提供的so和头文件。一般他们是提供对外暴露的接口,供开发者去开发。
这里我举个例子,看看如何在Eclipse环境下使用第三方的so。
第三方的提供:
|___libXyun.so|___Xyun|__HeaderA.h|__HeaderB.h
我们要基于这个so和两个头文件做自己的事情。需要在android.mk中添加对他们的引用。
首先,需要把他们拷贝到工程的jni目录中。最后结构如下:
jni |___libXyun.so|___Xyun|__HeaderA.h|__HeaderB.h
然后修改android.mk
#####添加对库的引用#######include $(CLEAR_VARS)LOCAL_MODULE := libXyun #名称LOCAL_SRC_FILES := libXyun.so #so的路径
include $(PREBUILT_SHARED_LIBRARY)LOCAL_SHARED_LIBRARIES := libXyun#####加入头文件#########
LOCAL_C_INCLUDES += $(LOCAL_PATH)/Xyun/ #头文件所在的目录
基本上这样就OK了。
TIPS
用Eclipse写jni代码,没有什么提示功能,用ANDROID studio编写比较舒服,有代码提示。所以建议:在studio中写代码,然后用mk去链接编译。
// TODO
Android Studio 2.2之后对jni的编写支持也好多了,有了CMake,使用起来也比较方便。CMakeList中怎么去使用,我还没有摸清楚。以后再加。估计会了之后,用CMake也会很方便。
转载于:https://my.oschina.net/lifj/blog/856262
Android ndk 使用第三方so和头文件编译相关推荐
- 【Android 高性能音频】Oboe 开发流程 ( 导入 Oboe 库 | 使用预构建的二进制库和头文件 | 编译 Oboe 源码 )
文章目录 一.导入 Oboe 库 二.使用预构建的二进制库和头文件 三.编译 Oboe 源代码 Oboe GitHub 主页 : GitHub/Oboe ① 简单使用 : Getting Starte ...
- Android NDK 使用第三方静态库(转)
源:Android NDK 使用第三方静态库 转载于:https://www.cnblogs.com/LittleTiger/p/4556382.html
- iOS中引入第三方静态库头文件找不到的问题解决方案
在前几次项目中,因为要引入一些自己打包好的静态库,也就是第三方静态库,但是出了很多问题,有时会遇到莫名其妙的问题,明明有这个文件,但是就是显示头文件找不到.为了在以后能够快速处理这种问题,所以在这里做 ...
- android ndk r14b安装,[Cmake-Android音视频]NDK-r14b编译ffmpeg3.4支持neon,硬解码
编译环境 Ubuntu16.04 x86_64 Ffmpeg3.4 ndk-r14b 编译前的准备 ubuntu16.04 64位linux 下载ndkubuntu 下载ffmpegbash 查看ub ...
- 头文件里面声明的函数,到底加extern好还是不加extern呢?加不加都一样,默认是EXTERN。有时候没包含头文件编译也能找到函数,不报错只警告
头文件里面声明的函数,到底加extern好还是不加extern呢? C/C++>C语言 收藏回复 [问题点数:20分] 0深水蓝0 等级 结帖率 79.49% 想征求一下大家的意见. 一些希望对 ...
- 使用cocoapods导入第三方类库后 头文件没有代码提示?
选择Target -> Build Settings 菜单,找到\"User Header Search Paths\"设置项 新增一个值"${SRCROOT}&q ...
- 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库头文件到 Android 工程中 | 配置 CMakeLists.txt 构建脚本 )
文章目录 一.拷贝 p7zip 源码中的头文件到 Android Studio 项目中 二.配置 CMakeLists.txt 构建脚本 1.导入动态库 2.导入头文件 三.完整 CMakeLists ...
- 【Android 高性能音频】Oboe 开发流程 ( 包含头 Oboe 头文件 | 创建音频流 | 设置音频流 | 音频流回调类 AudioStreamCallback )
文章目录 一.包含头 Oboe 头文件 二.音频流构建器 AudioStreamBuilder 三.音频流回调 AudioStreamCallback Oboe GitHub 主页 : GitHub/ ...
- android ndk 动态库_百度经验,android ndk 动态库
android ndk开发经常遇到了动态库的问题,本文主要介绍: ① 动态链接库的生成: ② 在Java和C混合编程的情况下如何调用第三方动态链接库: ③ 通过jar包的方式间接调用第三方动态链接库: ...
最新文章
- [Oracle]Oracle 各产品的 生命周期
- android组件通讯 Intent- 系统标准的Activity Action应用
- 健身品牌Shape获得数千万元Pre-A轮融资,清流资本领投
- com.esri.android,解决ArcGIS Android Could not find class 'com.esri.android.map.MapView'问题
- wordpress教程:默认http头信息X-Pingback的隐藏与修改
- Oracle 19.6 的有趣BUG:可能引发 CLOB 存储数据的丢失
- Java实训项目:GUI学生信息管理系统(2019)【中】
- Android系统 (150)---Android 开发者工具
- IDEA设置注释配置时获取不到参数的解决办法
- python中按照文件夹中文件的排列顺序读取文件内容
- java jtextfield 监听_Java JTextField DocumentListener如何用?
- c++ STL之queue
- svn忽略class文件夹上传的方法
- c语言关系运算符号比较大小,有哪些c语言关系运算符号
- 常用LDO低压差线性稳压芯片封装型号以及基本电路
- iol植入手术过程_完美!浙二眼科中心完成中国首例连续视程IOL植入术 - 眼科专业讨论版 -丁香园论坛...
- 还在为520礼物发愁吗?教你用python撩女朋友
- 今日头条2018校招测试开发方向(第一、二、三、四批)编程题汇总 - 题解
- 决胜未来,2019前端开发十大战略性技术布局
- 树莓派3 读取DS18B20 温度