Android studio进行NDK开发

1、先在src/main/目录下新建jni目录

2、这里偷个懒,直接从其他工程中拷贝Android.mk,Application.mk,demo.cpp到jni目录下

在Application.mk文件中,配置如下:

APP_ABI := armeabi armeabi-v7a arm64-v8a x86 x86_64 mips mips64

APP_PLATFORM := android-7

3、在local.properties文件中配置:ndk.dir=D\:\\android\\Androidstudio\\ndk\\android-ndk-r10e

4、在build.gradle文件中Android节点中的defaultConfig
节点中下配置如下:

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        applicationId "com.ycy.ndkdemo"
        minSdkVersion 14
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"

        ndk {
            moduleName "demo"
            ldLibs "log", "z", "m"
            abiFilters "armeabi", "armeabi-v7a", "arm64-v8a", "x86", "x86_64", "mips", "mips64"
        }
    }

}

5、通过以上配置基本OK,然后可以在Java中调用了。

ps:这种通过c++源码方式调用native的,最终编译后生成的.so文件在app\build\intermediates\ndk\debug\lib

=================================================================================================

接下来介绍第二种调用c++的方式

1、这种方式是在so库已有的基础上的,直接将各个cpu平台上的so库文件放在src/main/jniLibs目录下(新建jniLibs目录)

2、在build.gradle文件中的Android节点中配置:

    sourceSets {
        main { java.srcDirs = ['src/main/java', 'src/main/jniLibs'] }
    }

通过以上配置基本OK,然后可以尽情调用了。

最后补一句,这两种方式只能选择一种,不能两种一起用,否则会冲突的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-07-30 18:43:47

Android studio进行NDK开发的相关文章

Android实战技巧之二十三:Android Studio的NDK开发

较新的NDK版本是r10b,Android Studio对NDK开发的支持还处于构思阶段,所以很多工作比如用javah生成头文件等工作还要自己做.今天用一个例子来演示AS中的NDK开发. 新建一个项目SecondNdkTest 在此项目中新建一个Module叫ndklibrary,作为so库单独划出来.在library中新建一个java类SecondLib,内容如下: package com.linc.ndklibrary; /** * Created by linc on 15-3-29. *

Android Studio 使用NDK开发

Android Studio 使用NDK编程 使用Android Studio有半年多了,感觉很好用,不就感觉费劲的就是NDK的支持一直不是很好,再Bate版的时候好像0.4.x之前可以使用NDK,当然本身Android Studio本身是支持NDK编译的,下面我就来解释一下怎么使用Android Studio来编译. 很简单,首先要创建你的项目,创建完成之后点击项目右键new->Folder->JNI Folder,如图 然后就生成了jni文件夹 再往里面添加你的c/cpp文件和Androi

Android Studio配置NDK开发环境

1. 下载开发工具 下载CMake.LLDB.Android NDK,如图所示(勾选表示已经下载了,没勾选就勾选并点击右下角的apply进行下载,减号表示下载不完整或者有更新,再点击就可以勾选然后apply去下载或更新): CMake是编译器,类似于GCC.Clang等等.LLDB是用于调试的,类似于gdb的东西.Android NDK是Android Native Develop Kit,Android本地开发包,ndk开发必须的工具包,提供jni.h等等. 2. 最好配置一下 NDK_ROO

使用Android Studio进行ndk开发的准备

1. gradle-ex2. ndk开发包3. 项目目录结构4. lldb调试器 1. 一般来说gradle不是必需的,gradle也是可以进行ndk编译的,然而你需要在编译时使用更多(多于一个)c++编译选项时,以及让IDE可以使用lldb进行调试,或者是针对ndk开发和编译有更好的支持时,gradle-ex就是你所需要的.gradle-ex的ex不是扩展而是experimental实验非正式.它对ndk相关的配置进行了增强,同时又语法不兼容gradle,并且在ndk相关以外的配置沿着的是gr

使用Android Studio进行NDK开发

Step1:创建native方法 很easy,仅仅须要给定义好的方法加上native关键词就可以 注意:由于该方法的详细实现是在c++中详细实现的.所以相似于接口方法不须要加{}. Step2:生成class文件(多数情况可忽略) 大多数情况下class文件是已经生成的.可是在刚进行改动或者代码中出现错误时,有可能会影响到class文件的生成,这时仅仅须要又一次生成一下就能够了.步骤为菜单条Build==>Make Project(若存在错误.修正后又一次尝试本操作就可以) Step3:生成.h

android studio ndk-builld方式开发

之前都是在Ubuntu开发,项目也是老的,自然也就顺理成章的用eclipse做各种android的开发.最近想在android studio 切换下,有点不习惯.android studio 为ndk开发提供了两种不同的方式,使用cmake自动编译脚本 和类似eclipse上的ndk-build.这两者之间使用区别在于,如果想直接开发新的单模块可以考虑使用cmake,ide有自带辅助插件,让程序员使用起来更加舒心.如果想在第三方源码库上面做二次开发,或者需要多个源码库关联,感觉还是使用ndk-b

Mac下Android studio 之NDK配置教程

Mac下Android studio 之NDK配置教程(一) 1.概述 最近项目全线转移到Mac下使用使用Android studio开发.遇到关键代码封装到 ***native***层,此时在win下的NDK配置步骤全部失效. 为此,花费了大量时间用来查阅资料,在此,记录下来,分享给大家供以后配置中作为参考. 2.环境 本人使用的开发配置 是:MAC OS 10.10 +androioid studio 1.2+android-ndk-r10e-darwin-x86_64+git .其他配置类

Android Studio 之 NDK篇

由于工作内容的关系,对于NDK的工作涉及比较广(保密性,安全性),所以本章内容讲述一下NDK的基本使用过程. 网上也有很多这样的教程或者描述,但描述的并不完全 开发工具:Android Studio 2.1.2 NDK版本:android-ndk-r10e,支持64位so库的编译 JDK版本:1.8 64位 使用步骤如下: 第一步:NDK环境的搭建 ①jdk,Android SDK这些准备充分(只要能正常使用Android Studio的,这一条基本不用考虑) ②下载NDK,可以通过Androi

Mac下Android studio 之NDK配置教程(一)

Mac下Android studio 之NDK配置教程(一) 1.概述 近期项目全线转移到Mac下使用使用Android studio开发. 遇到关键代码封装到 ***native***层,此时在win下的NDK配置步骤所有失效. 为此,花费了大量时间用来查阅资料,在此,记录下来,分享给大家供以后配置中作为參考. 2.环境 本人使用的开发配置 是:MAC OS 10.10 +androioid studio 1.2+android-ndk-r10e-darwin-x86_64+git . 其它配