【NDK】NDK概念

空扰寡人 提交于 2019-12-04 16:39:46

1、ndk是什么

官方地址:

https://developer.android.com/ndk/index.html

2、什么场景可以应用ndk

   1.代码的保护,由于apk的java层代码很容易被反编译,而C/C++库反汇难度较大

    2.在NDK中调用第三方C/C++库,因为大部分的开源库都是用C/C++代码编写的(比如人脸识别、视频、图形)

    3.便于移植,用C/C++写的库可以方便在其他的嵌入式平台上再次使用(比如写了一个底层库,可以供android、ios通用)

3、什么是交叉编译

简单的说,就是在一个平台上生成另一个平台上可执行的代码(比如:x86、arm、mips平台)

4、jni是什么

Java Native Interface,允许java代码和其它语言写的代码进行交互

jni的实现流程

图片里的链接库应该是*.dll或*.so。。。。

5、什么是链接库

包括:静态链接库(什么鬼。。。) 和 动态链接库(.so结尾开头的库。。。)

 

6、make文件介绍

.mk文件,hello-jni demo里有,去找吧~~~

7、ndk开发包目录介绍

我的目录如下:

 

ndk-build:命令,ndk编译。。。

ndk-stack.exe 调试代码非常有用的命令,有助于快速查找bug

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!