NDK概念及Android Studio下配置

1.什么是JNI

Java Native Interface JNI是java和C/C++互相调用的一套规范。

2.什么是NDK

Native Development Kit 本地开发工具包。NDK是基于JNI一套工具库。

3.为什么使用NDK

3.1 性能/效率高

3.2 安全(反编译困难)

3.3 便于移植

3.4 C/C++一些优秀开源库可以直接供java使用

4.NDK配置

4.1 下载CMake,LLDB,NDK(需要翻墙,梯子自备)


CMake、LLDB、NDK下载

4.2 配置SDK,JDK,NDK路径,File->Project Structure->SDK Location 如下图


SDK、JDK、NDK配置路径

4.3 新建工程,步骤和普通工程一样,不一样的地方下图会标明

勾选include C++ support

勾选include C++ support

勾选Exceptions Support(-fexceptions)/支持异常

勾选Runtime Type Information Support(-frtti)/支持运行时类型信息(多态类型转换)


勾选Exceptions Support,勾选Runtime Type Information Support

4.4 点击Finish。这样一个支持C/C++的工程就完成了。

4.5 jniLibs目录设置(可选)

android {

    ...

    defaultConfig {

        ...

        externalNativeBuild {

            cmake {

                //支持运行时类型信息和C++异常信息

                cppFlags "-frtti -fexceptions"

            }

        }

    }

    ...

    //设置cmake文件路径

    externalNativeBuild {

        cmake {

            path "CMakeLists.txt"

        }

    }

    //设置.so、libs路径

    sourceSets.main {

        jniLibs.srcDirs = ['libs']

        jni.srcDirs = []

    }

}

你可能感兴趣的:(NDK概念及Android Studio下配置)