博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android Studio cmake编译FFmpeg以及Jni调用
阅读量:2089 次
发布时间:2019-04-29

本文共 634 字,大约阅读时间需要 2 分钟。

    NDK是一系列工具的集合。它提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。这些工具对开发者的帮助是巨大的。它集成了交叉编译器,并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。它可以自动地将so和Java应用一起打包,减轻开发人员的打包工作。
     JNI是Java语言提供的Java和C/C++相互沟通的机制,Java可以通过JNI调用本地的C/C++代码,本地的C/C++的代码也可以调用java代码。JNI 是本地编程接口,Java和C/C++互相通过的接口。Java通过C/C++使用本地的代码的一个关键性原因在于C/C++代码的高效性。 JNI是Java调用Native机制,是Java语言自己的特性全称为Java Native Interface。总之如果Java代码需要调用底层的c/c++代码,那么就需要通过jni来实现了,Android手机的底层是Linux,而linux之上跑的一般都是c/c++代码,而我们app是java代码,虽然一般情况下开发app是不需要了解jni的,但是有些需要高效率的事情,比如音视频编解码,比如3d绘图等就需要用c/c++来实现了,而且这些算法在c/c++上都是非常成熟的。
    Android Studio 推出 2.2 之后 ,解锁一个 NDK 开发新姿势 :

转载地址:http://ajqqf.baihongyu.com/

你可能感兴趣的文章