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 = []

    }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容