转载请标明出处:http://blog.csdn.net/shensky711/article/details/52763192

本文出自: 【HansChen的博客】

Android应用程序使用NDK的意义在这里就不说了,本文主要讲解如何在Android Studio 2.2下如何一步步搭建NDK开发环境。

下载NDK和工具

Android Studio2.2开始推荐开发者使用CMake去构建本地代码,在构建之前,我们需先安装下面三个依赖:

  • NDK: a set of tools that allows you to use C and C++ code with Android.
  • CMake: an external build tool that works alongside Gradle to build your native library. You do not need this component if you only plan to use ndk-build.
  • LLDB: the debugger Android Studio uses to debug native code.

我们可以使用SDK Manager进行下载,菜单位置:Tools > Android > SDK Manager,勾选后安装即可

创建或者导入native项目

创建工程



在这里要注意勾选这个Include C++ Support

接下来一路next最后finish,工程就创建好了。创建好之后系统默认生成了个demo。在Android Studio2.2下,目录结构发生了变化



所有c/c++文件都应放置在src/main/cpp/目录(以前是在jni目录)

配置build.gradle

android {
... defaultConfig {
... externalNativeBuild {
cmake {
//设置编译工具链
arguments "-DANDROID_TOOLCHAIN=clang"
//需编译生成的ABI类型
abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'arm64-v8a'
}
} ndk {
//打包进APK的ABI类型
abiFilters "armeabi", "armeabi-v7a", "x86"
}
} externalNativeBuild {
cmake {
//配置CMakeLists.txt的路径
path 'CMakeLists.txt'
}
} ...
}



配置之后,我们就会发现工程终于变成这种结构了,其中cpp里面的是源文件,External Build Files是CMakeLists文件。

当然,想要正常编译,我们还需要学习CMake文件,这里推荐一篇文章:CMake 入门实战

Android Studio 2.2 NDK开发环境搭建的更多相关文章

  1. android NDK开发环境搭建

    android NDK开发环境搭建 2012-05-14 00:13:58 分类: 嵌入式 基于 Android NDK 的学习之旅-----环境搭建 工欲善其事必先利其器 , 下面介绍下 Eclip ...

  2. Android下NDK开发环境搭建

    Android下NDK开发环境搭建 1.     AndroidNDK安装与配置 1.1  NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP部 ...

  3. android Jni NDK开发环境搭建及其简单实例的编写

    android  Jni  NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...

  4. 在Android studio中进行NDK开发

     在Android studio中进行NDK开发  分类: Android平台 软硬件环境 ubuntu kylin 14.04 红米note增强版 Android studio 0.8.6 ndk ...

  5. Android Studio NDK开发环境搭建

    一.   下载安装Android studio 和 NDK 二.   在Android studio中配置NDK(和SDK配置一样) 三.   用Android studio建立一个工程,打开proj ...

  6. android NDK 开发环境搭建

    基于 Android NDK 的学习之旅-----环境搭建 工欲善其事必先利其器 , 下面介绍下 Eclipse SDK NDK Cygwin CDT 集成开发环境的搭建. 1.Android 开发环 ...

  7. NDK开发环境搭建_r8

    本文主内容: 1.  Android NDK 安装 2.  安装Cygwin与使用NDK编译 3.  在Eclipse中集成C/C++开发环境CDT 4.  安装Sequoyah插件 5.  JNI编 ...

  8. 零基础Android学习笔记-01 安卓开发环境搭建

    安卓开发环境搭建. 1.首先准备JDK,从官网找到JDK下载地址,原来做.NET不熟悉JAVA,干脆用最新的,下载了JDK 1.7的版本.原来装过1.5还要配置环境变量什么的.但1.7好像很给力,装好 ...

  9. android studio下的NDK开发详解(一)

    源地址:http://www.voidcn.com/blog/chengkaizone/article/p-5761016.html 好记性不如烂笔头,开始坚持写博客,学一点记一点,只为了生活更好. ...

随机推荐

  1. unity message

    再用unity进行开发过程中,不可避免的用到消息的传递问题,以下介绍几种消息传递的方法: (一)拖动赋值 此方法即为最普通的方法,即把需要引用的游戏物体或者需要引用的组件拖动到相关公有变量的槽上,然后 ...

  2. 2018.8.7 python3 for循环中的else语句

    for      else 简述 用break关键字终止当前循环就不会执行当前的else语句,而使用continue关键字快速进入下一论循环,或者没有使用其他关键字,循环的正常结束后,就会触发else ...

  3. Magicodes.IE已支持导出Word、Pdf和Html

    关于Magicodes.IE 导入导出通用库,通过导入导出DTO模型来控制导入和导出,支持Excel.Word.Pdf和Html. GitHub地址:https://github.com/xin-la ...

  4. vue学习笔记-遗留问题记录

    Node.js是什么?对node.js的理解 官网解释:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时. 这是一种通过JavaScript语言开发web服务端的东 ...

  5. 洛谷P3121 【[USACO15FEB]审查(黄金)Censoring (Gold)】

    双栈+AC自动机 这题其实跟一道KMP算法的题有一些渊源,它就是这道题的简单板. Clear: 给你两个串A,B,每次在B串中从左到右找串A,并将该子串删除,直到找不到为止,问你能删几次. 样例输入: ...

  6. 大数据之路week01--day02_2 集合方面的总结

    (初稿 太晚了,明天再进行补充) 1.对象数组(掌握) (1)数组既可以存储基本数据类型,也可以存储引用类型.它存储引用类型的时候的数组就叫对象数组. (2)案例: 用数组存储5个学生对象,并遍历数组 ...

  7. python经典算法题:Z字变形

    题目 直接看图! 思路第一步:分组 我们把传入的字符串进行分组, 每个框内的字母为1组: 我们发现每个相同颜色的框内的一组字母的特点是在传入的字符串中是连续的: 我们还发现每组字母的个数是由numRo ...

  8. 项目——基于httpd镜像演示Dockerfile所有的指令

    基于httpd镜像演示Dockerfile所有的指令: 第一步:创建Dockerfile工作目录 [root@localhost harbor]# mkdir /test [root@localhos ...

  9. Linux 使用记录

      作为web程序员,该掌握的 linux 命令有哪些,稍微高级点的? - 刘志军的回答 - 知乎  https://www.zhihu.com/question/64063454/answer/21 ...

  10. java编程思想第四版第十一章习题

    第一题 package net.mindview.holding.test1; import java.util.ArrayList; import java.util.List; /** * 沙鼠 ...