JNI & NDK

  • 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工具链包括:
    1. aarch64-linux-android-gcc
    2. aarch64-linux-android-g++
    3. aarch64-linux-android-ar 库管理工具
    4. aarch64-linux-android-as 汇编器
    5. aarch64-linux-android-ld 链接器
    6. ndk-gdb

如果要使得C/C++可执行程序或动态库能运行在Android操作系统中,需使用NDK工具链进行编译、汇编、链接.
aarch64-Linux-android-gcc表示aarch64架构-Linux内核-Android操作系统对应的gcc

猜你喜欢

转载自www.cnblogs.com/cristiano-duan/p/12144866.html