Android Studio中的CmakeList NDK配置

Android Studio2.2之后直接可以在创建工程师添加NDK支持了,添加之后,main文件夹下会多出一个native-lib.cpp这个文件,如果只为了一个简单的NDK接口,貌似这就结束了。直接在native-lib.cpp下编程即可。

  但是,如果使用第三方库,就得重新配置了。到目前为止,网上大半文章都是.mk的配置方法,按照他们的步骤,在AS上一步一步做下去好像很难成功。

  Android Studio2.2使用Cmake作为跨平台编译工具,创建完一个工程后,JNI的配置都由Cmake来管理,在priject文件夹下的CmakeList文件中。

CMake有一套自己的编写规则,按照引入方式的不同,先写两个demo

1,native-lib文件调用第三方库

  第三方库是被编译成so库直接调用的,配置so库的时候,对应的头文件也要添加上

  

#譬如加载一个FFMPEG模块

1 include_directories(${pathToFFMPEG}/include) #添加ffmpeg对应的头文件目录,${pathToFFMPEG}为前面配置过的路径,可以替换为include_directories(E:/ffmpeg/include)这种路径格式
2 add_library( ffmpeg SHARED IMPORTED) #添加库文件,实际上就是引入so文件,IMPORT代表从第三方引入的意思3 set_target_properties( ffmpeg PROPERTIES IMPORTED_LOCATION ${pathToProject}/app/src/main/jniLibs/${ANDROID_ABI}/libffmpeg.so#这句话是ffmpeg对应的so文件,so文件是放到JNILibs这个文件夹中 4 target_link_libraries( $\{log-lib} native-lib ffmpeg) #为native-lib加载ffmpeg库.

  这样配置好就可以在native-lib里调用ffmpeg模块了

2,自己编写的cpp文件

#加载coreAlg核心代码
add_library(coreAlg SHARED src/main/cpp/coreAlg.cpp )#添加库文件,这种实际上是有AS给编译成so文件了
target_link_libraries(native-lib ${log-lib} coreAlg)#native-lib里调用coreAlg
时间: 2024-11-02 08:25:06

Android Studio中的CmakeList NDK配置的相关文章

Android Studio中配置及使用OpenCV示例

Android Studio配置及使用OpenCV 前言:最近在做项目移植,项目较大,在Eclipse中配置的Jni及OpenCV环境没任何问题,但是迁移到Studio中就问题一大堆,网上也找了一些资料参考及学习,很感谢前人留下的总结及经验.关于在AS中使用jni及配置OpenCV也研究了一 Android Studio配置及使用OpenCV 前言:最近在做项目移植,项目较大,在Eclipse中配置的Jni及OpenCV环境没任何问题,但是迁移到Studio中就问题一大堆,网上也找了一些资料参考

[email protected] 在Android studio 中配置Kotlin

在Android项目中配置Kotlin 官方文档讲了如何一步步安装Kotlin插件,并使用插件在Android项目中自动修改Gradle文件来添加对Kotlin的支持.我不建议大家这么做,因为这样自动完成的结果可能并不完美,即使修改后的Gradle文件工作正常,也会打乱Android项目中Gradle文件的一般形式. 说实话,我一直不喜欢有些Android Studio插件直接修改Android build文件,因为经常搞得很乱,我又得一点一点清理直到符合我的风格.Gradle构建文件也是源代码

在ADT和Android Studio中配置和使用Git

株洲新程IT教育 李赞红 搞了半天,图片居然没上传,直接下载吧:http://download.csdn.net/detail/lifenote/9500827 1.版本控制的作用 A.版本控制 B.项目的基本管理 C.团队协作开发 D.历史记录 E.文件跟踪 2.两个常用的GIT服务商 A.国外:github   https://github.com/ B.国内:[email protected]  http://git.oschina.net/(本文使用这个) 3.GIT的工作原理 A.数据

理解与配置android studio中的gradle

使用gradle构建android应用时,你总是需要这样一个文件:build.gradle.你应该已经看过这个文件了,如果没有看过的话,你现在就可以看一下,它没有多少内容.它的简洁性得益于它提供了很多对设置和属性的默认值.gradle是基于groovy语言的,但就使用它构建普通的工程的话,是可以不去学groovy的,如果想深入的做一下自定义的构建插件,可以考虑学一下groovy,因为它是基于java的,所以你有java基础的话,学习不会很难. 这篇博客旨让任何一个人能看懂android stud

AndroidAnnotations在Android Studio中的配置

AndroidAnnotations是一款功能很强大的注解框架,具体使用我就不介绍了,大家可以自行百度了解.在eclipse的配置也比较简单,但是在android studio中的配置好像有点麻烦,看网上介绍的都不行,自己去google查了半天才找到配置方法,这里分享给大家,我的android studio版本是V1.2.2,其他android studio版本没测试过. 打开我们的项目,切换到Project模式,然后选择app目录下面的build.gradle文件,打开它,然后在上面添加 ap

Android Studio 中集成Opencv环境(包含opencv_contrib部分)

我在上一篇博客中说到了在Android中集成OpenCV,但是那个版本的OpenCV是没有SIFT和SURF算法的,因为这些算法是受专利保护的,所以并没有被包含在预编译库中,所以如果想要使用SIFT和SURF算法,需要自己来编译OpenCV Android SDK.在OpenCV 2.4.x版本中,这些算法被包含在nonfree模块中:从3.0版本开始,用于图像特征匹配的一些算法(比如SIFT,SURF,BRIEF,FREAK等)被转移到了opencv_contrib项目的xfeatures2d

在Android Studio中创建项目和模拟器

北京电子科技学院 实      验      报      告 课程:移动平台应用开发实践  班级:201592  姓名:杨凤  学号:20159213 成绩:___________  指导老师:娄嘉鹏   实验日期 :2015.11.1 实验名称:           在Android Studio中创建项目和模拟器 实验内容:       1.在Android Studio中创建项目 2.创建并启动Android模拟器 一.实验简介 熟悉Android的开发环境.一些基本的操作技巧以及调试技

android studio中安装git

在android studio中方便的版本控制软件是git,当然还有其他的比如svn,但是和github一起常用算起来git方便很多怎么安装呢?请看下文: 第一步:下载安装git 先在你的电脑上安装git,去git官网上下载,http://www.git-scm.com/download/下载你的电脑对应的版本,安装的时候记住安装的路径比如D:\Git_Install\Git\bin 第二步:android studio 配置git 打开android studio的-----File ----

使用Android Studio自带的NDK编译JNI

/********************************************************************************** * 使用Android Studio自带的NDK编译JNI * 说明: * 省得自己另外去下载NDK,编译JNI,麻烦. * * 2017-4-30 深圳 龙华民治樟坑村 曾剑锋 ****************************************************************************