-
JNI(Java Native Interface),Java本地接口,使Java与本地其他语言(C/C++)交互,JNI是Java的语言特性,与Android无直接关系;
-
NDK(Native Development Kit),Android的一个开发工具包,快速开发C/C++动态库,并自动将SO和应用打包成APK,NDK属于Android,与Java无直接关系;
-
交叉编译Android C/C++库时,需要使用NDK工具链进行编译,64位NDK工具链包括:
- aarch64-linux-android-gcc
- aarch64-linux-android-g++
- aarch64-linux-android-ar 库管理工具
- aarch64-linux-android-as 汇编器
- aarch64-linux-android-ld 链接器
- ndk-gdb
如果要使得C/C++可执行程序或动态库能运行在Android操作系统中,需使用NDK工具链进行编译、汇编、链接.
aarch64-linux-android-gcc表示aarch64架构-Linux内核-Android操作系统对应的gcc