文档章节

Android Studio NDK项目中的编译配置

C
 Chendj
发布于 2017/02/10 15:46
字数 633
阅读 769
收藏 1

如果要入门Android NDK的开发,那么就要好好的学习如何的配置底层代码的编译环境了。

1,首先肯定是要有NDK的包,去http://developers.google.cn谷歌的中国官方网站上面去下。

2,到Android Studio 中新建项目,特别注意,一开始新建项目的地方有个勾选框,提示是否要添加c++支持,这里不需要勾选。

3,新项目创建好之后,要点击查看SDK Location的下方,有个Android NDK location 将这里的路径设置成之前的NDK包解压的路径。

4,这里开始进行关键步骤的设置。首先在新建项目的src/main目录中添加jni目录,这个目录的新建要特别注意,不要自己手动的添加。鼠标右击main目录,如下图

然后在main项目目录中就会添加一个jni的目录,在这个目录里,添加c/c++文件。

5,最重要的一步,添加Android.mk和Application.mk的项目编译配置文件。

这两个文件网络上很多相关的介绍说明,这里不多说,将这两个文件自己新建并添加到jni目录中去,ndk-build 命令开始编译的时候会读取这两个配置文件。

6,在配置好上述第五点的两个编译配置文件后,到项目jni项目的build.gradle文件中,修改一下。如图:

上面的sourceSet中的设置,主要是为了设定jni文件编译后生成的动态库so文件存放的位置。

还有下方的externalNativeBuild的设置,需要指定Android.mk文件的具体位置。完成上面的步骤之后。

7,使用Android studio 中的Terminal命令行进入到jni目录下,然后ndk-build命令输入,回车。编译好的so动态库文件,就在libs目录中躺好了,等你使用。嘿嘿嘿。

 

8,在引用jni动态库的项目中,如何引入编写好的动态库文件?首先把之前生成好的SO动态库文件的所有目录,如图:

把这些文件夹全部拷贝到使用库的新建项目中的libs文件夹中。如图:

在使用库的新建项目的build.gradle文件中添加:

sourceSets.main.jniLibs.srcDirs = ['libs']

 如图:

这样,新建的项目就能正常的使用之前写好的底层库了。

 

 

© 著作权归作者所有

C
粉丝 7
博文 24
码字总数 7791
作品 0
福州
Android工程师
私信 提问
加载中

评论(0)

最新靠谱可用的 Mac 环境下 FFmpeg 环境搭建

大家好,我是光源。 最近在尝试搭建 FFmpeg 开发环境时遇到一个蛋疼的事,Google 了 N 篇文章竟然没有一篇是可以跑起来的! 少部分教程是给出了自我矛盾的配置(是的,按照贴出来的代码和配置...

光源_Android
2018/05/13
0
0
[Android] 环境配置之Android Studio开发NDK

======================================================== 作者:qiujuer 博客:my.oschina.net/u/1377710 网站:www.qiujuer.net 开源库:Genius-Android 转载请注明出处:http://my.osc......

Qiujuer
2014/12/21
1.2K
8
在android studio中集成javah, ndk-build进行JNI开发

最近在搞一个android上控制LED灯闪烁的功能,用到了串口编程,搜索了一下,发现Google发布了一个demo,android-serialport-api。有现成的代码和APK,要想自己改JNI也比较简单,就一个C文件。...

LeoLiang
2018/08/04
0
0
安卓JNI精细化讲解,让你彻底了解JNI(一):环境搭建与HelloWord

目录 1、基础概念 ├──1.1、JNI ├──1.2、NDK ├──1.3、CMake与ndk-build 2、环境搭建 3、Native C++ 项目(HelloWord案例) ├── 3.1、项目创建(java、kotlin) ├── 3.2、CMake...

齐行超
2019/11/22
0
0
AndroidStudio用Cmake方式编译NDK代码(cmake配置.a库)

AndroidStudio用Cmake方式编译NDK代码(cmake配置.a库) 1.cmake是什么? CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的mak...

shzwork
2019/06/05
530
0

没有更多内容

加载失败,请刷新页面

加载更多

仁怀哪里可以开餐饮费发票-中国新闻网

仁怀哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723687
今天
58
0
资兴哪里可以开餐饮费发票-中国新闻网

资兴哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723480
今天
42
0
沅江哪里可以开餐饮费发票-中国新闻网

沅江哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723685
今天
42
0
天津哪里可以开餐饮费发票-中国新闻网

天津哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723617
今天
39
0
汨罗哪里可以开餐饮费发票-中国新闻网

汨罗哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17060820048
今天
62
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部